Pertimbangan Pengembangan Sistem Pakar di Indonesia The Houw Liong,
FMIPA, ITB.
Abstrak Pertimbangan
pengembangan
sistem
pakar
yang
meliputi
kemungkinan
pengembangan, pembenaran pengembangan, dan apakah sistem pakar dapat dipandang memadai di kemukakan di sini. Selanjutnya dikemukakan pula tahap pengembangan sistem pakar. Kemudian berdasarkan taraf perkembangan
dan
keadaan Iptek di Indonesi diajukan berbagai bidang yang dapat memenuhi kriteria pengembangan tsb. Pengembangan sistem pakar di Indonesia cukup relevan karena kita menghadapi peralatan Iptek yang cukup rumit baik dalam operasi, pemeliharaan, maupun interpretasi data, selain itu kita menghadapi kekurangan pakar dalam berbagai bidang. I. Pendahuluan Sekitar tahun 1960, ilmuwan berhasil membuat simulasi dari proses berpikir untuk memecahkan masalah secara umum yang dikenal sebagai GPS (General Problem Solving). Namun penemuan ini belum menghasilkan sistem yang terasa manfaatnya. Baru sekitar tahun 1970 orang menyadari bahwa kekuatan pemecahan masalah tidak hanya bergantung dari kemampuan inferensi seperti pada GPS, tetapi Juga pada representasi pengetahuan dan pengetahuan khusus yang dimilikinya. Dengan menggabungkan kemampuan inferensi dan representasi pengetahuan khusus kita dapat membentuk sistem pakar yang mempunyai pemakaian yang sangat luas misalnya untuk melakukan diagnosis penyakit yang ditimbulkan oleh bakteria, interpretasi data logging, melacak kerusakan pada berbagai instrumen, peramalan cuaca, manipulasi simbolik, dll. Sekarang orang telah berhasil membangun perangkat lunak yang dapat membantu kita untuk membangun sistem pakar, dan ada yang sudah bersedar di Indonesia, misalnya EXSYS, PERSONAL. CONSULTANT PLUS, INSIGHT 2+.
1
dll. Perangkat lunak ini telah menyiapkan motor inferensi, serta cara pembentukan basis pengetahuan. Dengan memanfaatkan
perangkat
lunak ini
kita dapat
membangun prototipe sistem pakar dalam waktu yang singkat. Kita dapat juga membangun prototipe sistem pakar dengan memanfaatkan bahasa Prolog atau Lisp yang sudah beredar di tanah air kita. Berdasarkan perangkat lunak yang tersedia tsb. Serta perkembangan Iptek di
Indonesia,
penulis
mencoba
mengemukakan
berbagai
pertimbangan
pengembangan sistem pakar di Indonesia.
II. Berbagai Faktor yang Perlu Dipertimbangkan Dalam Pengembangan Sistem Pakar Pengembangan
sistem
pakar
baru
dapat
dilaksanakan
setelah
kita
mempertimbangkan kemungkinan pengembangannya, mencari dasar pemikiran apakah pengembangan tsb. dapat dibenarkan dan apakah sistem pakar memadai untuk membantu menyeiesaikan masalah yang sedang atau akan dihadapi. Pada umumnya pengembangan sistem pakar mungkin saja dilakukan bila persyaratan di bawah ini dapat dipenuhi. 1. Titik
berat
pemecahan
masalah
hanya
memerlukan keterampilan
pengolahan pengetahuan secara logis (cognitive skills). 2. Terdapat pakar dalam bidang tsb. yang dapat menyatakan proses pemecahan masalahnya secara rasional dan pemecahan masalah tsb. dapat disetujui oleh pakar dalam bidang yang sama. 3. Proses pemecahan itu tidak terlalu sukar dan memerlukan waktu tidak lebih dari satu jam. Pengembangan sistem pakar dapat dibenarkan bila persyaratan di bawah ini dapat dipenuhi. 1. Pemecahan masalah dapat memberikan hasil yang baik. Ini berarti bahwa pemecahan tsb. cukup tepat dan membawa keuntungan. 2. Pakar dalam bidang itu masih langka.
2
3. Pakar dalam bidang itu diperlukan pada tempat yang kurang disukai, misalnya pada daerah yang terpencil atau tempat yang berbahaya. Pengembangan sistem pakar dapat dipandang memadai bila : 1. Pemecahan masalah memerlukan pengolahan pengetahuan yang dapat diungkapkan dengan kaidah-kaidah atau simbol-simbol. 2. Pemecahan masalah memerlukan kaidah heuristik.Umumnya dalam pekerJaan pakar diperlukan strategi pemecahan dan kaidah yang efektif yang dapat diterapkan dan menghsilkan pemecahan dalam waktu relatif singkat, walaupun ada kemungkinan (kecil) bahwa strategi pemecahan ini gagal. 3. Tugas tsb. tidak terlalu mudah dan memiliki nilai praktis.
Kriteria tsb. dapat dipakai untuk mempertimbangkan berbagai masalah yang dapat diselesaikan dengan bantuan system pakar. III. Pengembangan Sisitem Pakar Dengan memanfaatkan perangkat lunak yang sudah tersedia seperti yang diungkapkan pada pasal yang lalu , kita dapat membangun sistem pakar melalui empat tahap pengenbangan sbb. 1. Identifikasi masalah dan pendefinisian domain sistem pakar. 2. Konseptualisasi dan Formalisasi yang dilaksanakan melalui pengembangan kosakata pengetahuan ybs. 3. Pembuatan basis pengstahuan dan implementasinya. 4. Pengujian basis pengetahuan. Tahap pertama dan kedua berkaitan erat dengan sifat masalah yang sedang dihadapi serta perbendaharaan kata yang diperlukan untuk memecahkan masalahnya. Tahap ketiga dan keempat merupakan tahap pengalihan dari pengetahuan yang kita ketahui menjadi perangkat lunak dengan bantuan pembangun sistem pakar seperti Exsys, Insight 2+ dan Personal Consultant Plus. Sebelum kita mulai membangun sistem pakar yang sesungguhnya biasanya kita membangun dahulu prototipe dari system pakar itu. Daerah permasalahan yang dibahas dalam prototipe jauh lebih kecil daripada daerah permasalahan yang
3
sesungguhnya, lagi pula kaidah yang dipakai tidak perlu sempurna, yang diutamakan dalam prototype ini ialah kita dapat memperlihatkan bahwa sistem pakar yang kita bangun ini sudah dapat berJalan dan unsur penting dari domain pengetahuan yang kita bahas sudah dapat masuk ke dalam prototype ini. Keempat tahap pengembangan tsb. di atas berlaku juga bagi pengembangan prototipe. 1. Tindakan pertama yang harus kita lakukan ialah menganalisis masalah yang kita hadapi, kemudian mencoba membagi domain permasalahan menjadi subdomain dan subdomain menjadi sub-subdomain dst. Buatlah diagram pembagian tsb. Selanjutnya kita memikirkan aliran inferensi. Di sini kita mencoba mencari hal apa saJa yang dapat diamati, fakta-fakta yang diketahui, lalu mencari hubungan dengan berbagai fakta yang dapat diturunkan dari pengamatan serta fakta awal itu. Selain itu dalam tahap ini, kita harus membayangkan jenis tanya jawab yang berlangsung antara sistem pakar dan pemakai. Jenis pertanyaan apa saJa yang diperlukan oleh sistem pakar untuk mengumpulkan inrormasi yang diperlukan serta jenis jawaban yang diharapkan. Perkirakan Juga standard performansi yang di harapk an untuk menguji sistem pakar yang kita bangun. 2. Cara terbaik untuk membangun sistem pakar yang baik ialah melalui pengembagan kosakata pengetahuan yang jelas serta berguna. Dalam tahap ini kita harus mencari "attributes" dari basis pengetahuan yang diperlukan, harga (values) dari attributes tsb. serta mencoba menuliskan kaidah dengan memakai attributes tsb. di atas. Semuanya ini harus ditata dalam suatu kerangka yang baik. Misalnya dalam sistem pakar yang dapat membedakan berbagai jenis buah-buahan salah satu attribute ialah warna yang dapat mempunyai harga merah, kuning, hijau, dll. Kaidah yang dapat kita tulis misalnya : Jika warna buah tsb. merah maka jenis buahnya ialah rambutan atau apel dengan faktor keterandalan 80%. 3. Sekarang kita telah siap untuk memasukkan basis pengetahuan dengan memakai
pembangun
sistem
pakar,
misalnya
Exsys, Insight 2+ atau
Personal Consultant Plus dengan langkah sbb.:
4
a. Catat basis pengetahuan pada kertas dengan pengelompokan menurut subdomain seperti yang dipikirkan dalam tahap pertama. Struktur basis pengetahuan harus Jelas. b. Periksa lagi attributes serta harga yang dipakai dengan membuat label attribues serta diagram basis kaidah. c. Periksa penalaran kaidah yang dipakai. Pembangun sistem pakar dapat dipakai untuk membantu memeriksa konsistensi kaidah, kelengkapan kaidah serta kaidah yang berlebih. d. Periksa pula raktor keterandalan (CF atau confidence Factor). Setiap kesimpulan yang ditarik berdasarkan kaidah dapat kita beri CF misalnya 70%, 80%, 90%, atau .... kita harus memeriksa juga bagaimana sistem pakar ini mengolah kombinasi dari CF. Pemberian CF ini dapat diperiksa dengan berkonsultasi pada pakar yang berpengalaman dan dengan statistik. 4. Kita harus menyiapkan daftar kasus penguJian yang cukup luas untuk mencakup segala aspek penting dari sistem pakar itu. Kita susuri pengujian itu mulai dari yang sederhana hingga yang rumit. Kita mencoba pengujian itu dengan menjalankan sistem pakar itu dan mengevaluasinya dengan kriteria yang telah kita siapkan pada tahap pertama. Jika kita mendapatkan kelemahan kita dapat segera memperbaikinya dan mengulangi pengujiannya. Coba perhatikan dialog antara pemakai dan sistem pakar. Apakah masih harus diperbaiki? Beri pula kesempatan pada orang lain untuk mengevaluasi sistem pakar yang kita bangun ini. Demikianlah secara singkat kita telah mengajukan tahapan yang harus kita perhatikan dalam pembangunan prototipe sistem pakar. Tahapan seperti ini berlaku pula ketika kita membangun system pakar yang lengkap. Dalam tahapar. pembuatan prototipe ini kita dapat memakai IBM PC. Selanjutnya, kita akan memasuki pengembangan sistem pakar dalam tahap penelitian.
Disini diperlukan penyempurnaan dan penambahan kaidah-kaidah
5
sehingga sistem ini dapat dipakai memecahkan masalah dalam domain yang tidak terlalu luas tetapi dapat dipandang sebagai suatu subbidang yang lengkap. Kemudian setelah kecepatan dan keefektifan sistem dalam memeperoleh pemechan diperbaiki kita dapat memasuki tahap produksi atau komersial. Dalam memasuki tahap ini mungkin kita memerlukan komputer yang setingkat lebih tinggi dari pada yang disebutkan di atas, misalnya EXPLORER. IV. Berbagai Kemungkinan Pemakaian di Indonesia Masuknya teknologi modern ke Indonesia pada umumnya disertai dengan peralatan yang operasinya cukup rumit, demikian juga cara pemeliharaan serta interpretasi data yang diperoleh memerlukan kepakaran khusus. Sebagai contoh dapat kita sebutkan reaktor atom dan peralatan lain yang sedang dibangun di Serpong, peralatan yang canggih seperti NMR, EPR, peralatan Hankam, PLN, dll. Peralatan seperti ini sebaiknya didampingi oleh sistem pakar yang mampu membantu baik dalam operasi, maupun dalam pemeliharaan, pelacakan kerusakan serta interpretasi data yang diperoleh. Pada saat ini kita Juga memerlukan penyebaran kepakaran ke berbagai daerah, misalnya untuk mengatasi kekurangan kepakaran dalam bidang kesehatan, teknik, pertanian, pemasaran, dll. didaerah yang terpencil. Hal-hal seperti di atas dapat dibantu pemecahannya dengan membangun sistem pakar yang sesuai dengan kebutuhan tsb. Daftar Pustaka 1. Paul Siegel, Expert Systems, Tab Books Inc., 1986. 2. L.E. Frenzel.Jr., Crash Course in Artificial Intelligence and Expert Systems, Sams, 1986. 3. D. A. Waterman, A Guide •to Expert Systems, Addison-Wesley Co.,1986,
6
Jaringan Neural Artifisial (Artificial Neural Network) dan Logika Samar (Fuzzy Logic) untuk Prediksi dan Pengenalan Pola The Houw Liong, ITB Abstrak .laringan neural uriifisial dan atau logika samar dapat dipakai untuk melakukan tugas yang sulit dilakukan oleh komputer biasa misalnya untuk belajar mengenal bentuk geometri, huruf tulis, suara, pola. deret waktu dll. Dalam bab ini akan dibahas pegertian jaringan neural artifisial, neural artificial adaptive neuro-fuzzy inference system dan cara kerjanya dan pemakaiannya dalam prediksi dan pengenalan pola. Konsepjaringdn neural artifisial timbul dan diilhami oleh jaringan neural dalam benak manusia yang memiliki arsitektur yang sangat berlainan dengan komputer hiasa. Orang menyadari bahwa membuat perangkat lunak supaya komputer memiliki kemampuan belajar seperti manusia sangat sukar. Rosenblatt
berpikir bahwa
7
kesukaran ini mungkin dapat diatasi dengan membuat komputer dengan arsitektur yang mirip dengan jaringan neural yang ada dalam benak manusia. Ilmuwan menyambut konsep ini dan banyak yang mulai ikut serta untuk mengembangkannya, sehingga sekitar tahun 1980 orang sudah mulai melihat hasilnya. Salah satu jaringan neural artifisial yung terdiri dari tiga lapis neuron, yaitu lapisan masukan, lapisan tersembunyi, dan lapisan keluaran yang bekerja memakai kaidah propagasi balik serta berbagai modifikasinya, demikian juga adaptive neuro fuzzy inference system ternyata mempunyai kemampuan belajar mengenal pola gambar, suara, dan simbol, sehingga terbuka kemungkinan untuk memanfaatkannya dalam geofisika dan meteorologi misalnya dalam mengenal pola citra yang diambil dari satelit, klasifikasi awan, menganalisa deret waktu suhu rata-rata bumi, deret wuktu anomali suhu permukaan laut, prediksi cuaca/iklim, dll. JNA misalnya jenis ART dan Kohonen mampu melakukan klasifikasi demikian juga metoda yang dikembangkan dalam logika samar , dapat melakukan klasifikasi samar. Sebagai contoh penerapan pengaruh El Nino yang tercermin dalam anomali SST Nino 3.4 dan index SOI dapat dibahas korelasinya dengan persentase daerah kering di Indonesia dengan dengan cara stalistik dan dapat dikemhangkan lebih lanjut dengan memakai JNA logika samar seperti yang diuraikan di atas. Demikian juga pendaerahan kekeringan di Indonesia dilakukan dengan melihat garis isohyet dan indeks kekeringan. Selanjutnya dapat diteruskan dengan memanfaatkan JNA/ logika samar untuk Pengelompokannya. Pendahuluan Neuron yang sebenarnya seperti yang tcrdapat dalam benak manusia dan hewan mempakan pcranti yang sangat rumit dengan berbagai bagian, subsistem dan mckanisme kendali. Neuron-neuron ini saling berhubungan dengan memakai berbagai jaringan elektrokimiawi sehingga dapat saling berkomunikasi. Peneliti belum dapat mengerti dengan baik bagaimana neuron itu bekerja, apalagi membuat tiruannya. Jaringan neural artifisial belum dapat dinyatakan sebagai model daripada jaringan neural biologis tetapi jaringan neural artifisial ini merupakan model yang
8
mengambil bcrbagai aspek dari jaringan neural biologis yang diperkirakan mempunyai kemampuan intelegensi yang cukup menarik. Salah satu fungsi dari model ialah mereduksi jumlah parameter sistem sehingga kita dapat mengerti dengan baik secara analitis dan komputasi. Neuron artirisial dapat digambarkan sbb.:
S
FA
TF
(Gambar 1. Neuron artificial. S menyatakan penjumlahan dengan bobot tertentu FA menyatakan fungsi Aktivasi dan TF menyatakan Fungsi Transfer. Kita baca gambar tsb. mulai dari sebelah kiri. Di sini terlihat ada tiga garis masukan. sebenarnya jumlah masukan mungkin saja N (suatu bilangan bulat yang besarya sama dengan satu atau lebih besar daripada satu). Kemudian neuron akan melakukan pcnjumlahan dengan pcmbobotan tertentu ini diberi tanda S . Masukan total ini akan diubah oleh fungsi aktivasi menjadi harga aktivasi. Akhirya harga aktivasi ini akan diubah oleh fungsi transfer menjadi keluaran dari neuron artifisial tsb. Keluaran ini akan menjadi masukan bagi neuron yang lain. dst. Fungsi transfernya dapat bermacam-macam, misalnya fungsi linear, fungsi tangga, atau sigmoid. Jaringan Neural Artifisial Dalam model jaringan neural artiftisial, kclompok neuron tersusun dalam suatu satuan struktural yang dikenal sehagai lapisan neuron. Suatu jaringan dapat terdiri dari satu lapisan, beberapa lapisan, atau banyak lapisan. Model yang akan dibahas dalam makalah ini terdiri dari tiga lapisan yaitu lapisan masukan, lapisan tersembunyi, dan lapisan keluaran. Masukan dari luar masuk ke neuron pada lapisan masukan. Keluaran neuron dari lapisan ini akan masuk ke neuron
9
pada lapisan tersembunyi dan keluaran dari neuron lapisan tersembunyi akan masuk ke neuron pada lapisan keluaran. Lapisan yang terhubung seperti ini membentuk suatu jaringan neural artifisial. Masukan pada jaringan neural ini dapat berupa gambar, simbol, atau angka tetapi kita selalu dapat mengalihkannya menjadi sekumpulan angka yang kita sebut vektor masukan. Keluaran dari jaringan neural akan berupa vektor pula, tetapi vektor ini dapat kita kcmbalikan menjadi gambar, simbol, atau angka. Kuatnya hubungan antara neuron dinyatakan oleh Wij yang disebut bobot antara neuron ke i dan neuron ke j. Untuk suatu neuron selalu terdapat vektor bobot Wi yang berkaitan dengannya. Jadi neuron bckcrja dengan masukan dan keluaran numerik1,2,3,4,5). Masukan ini diolah olch neuron ke i dengan melakukan perkalian sekalar antara vektor masukan dengan vektor bobot menjadi Api. Pilih fungsi aktivasi FA(Api) = Api, maka harga aktivasi = Api, kemudian diubah lagi oleh fungsi transfer menjadi keluaran dari neuron itu. Jika masukannya berbentuk gambar maka setiap neuron masukan menerima suatu angka yang bcrsesuaian dengan intensitas piksel tertentu. Jadi gambar bersesuaian dengan sekumpulan angka yang kita sebut vektor. Demikian juga simbol dapat kita petakan menjadi sekumpulan angka. Sedangkan pada keluaran
kita
melakukan
pengalihan sebaliknya. Jaringan neural ini dapat belajar melalui contoh yang diberikan melalui pcngubahan pembobotan yang menghubungkan antar neuron tsb. Dalam contoh belajar, kita mcmpunyai pola keluaran vektor P. Jika keluaran dari jaringan neural ialah 0, maka galat (error) antara P dan 0 dibuat minimum dengan teknik selisih kuadrat terkecil melalui pengaturan pembobotan.
Propagasi Balik Misal kita mcmpunyai N pasangan masukan-keluaran yang harus "dipelajari". Veklor masukannya ialah Ip , dan vektor sasaran ialah Pp . Indeks p bergerak dari 1 sampai dengan N. Keluaran neuron ke i kita beri simbol Oi dan aktivasinya Ai . Jika fungsi transfemya TF maka Oj = TF(Ai). Secara matematis galatnya dapat ditulis sbb.:
10
Epi =(Ppi. - Opi )2/2
(1.1)
galat total untuk pola ke p ialah Ep= Σ Ei Epi
(1.2)
galat total untuk semua pola ialah E=Σp Ep = Σ Ei Epi
(1.3)
Dalam teknik propagasi balik perubahan pembobotan dihitung sebagai berikut ini, E harus dibuat minimum dengan mengubah pembobotan Wij. Perubahan Wij ΔpWij -= -η (dEpi/dWij ) (1.4) dengan η tetapan belajar. Dengan cara ini, galat akan dijalarkan balik selama proses belajar berlangsung dengan memperbaiki pembohotan menurut rumus yang tertulis di atas. Modifikasi model tsb. dapat dilakukan dengan mengubah fungsi transfer dan kaidah belajamya. Selain arsitektur dan kaidah belajar JNA seperti yang diungkapkan di atas masih banyak arsitektur dan kaidah belajar JNA yang dapat dibangun, misalnya yang dikenal sebagai jaringan Hopfield yang dapat menentukan bobot yang diperlukan secara langsung dari pola yang akan disimpan dalam JNA jaringan Kohonen atau ART yang mampu belajar tanpa guru dll. JNA ini mempunyai kcmampuan khusus yang
dapat
juga
diterapkan
dalam
prediksi
cuaca
atau
iklim,
pengelompokan/klasifikasi iklim. dll. Himpunan Samar dan Logika Samar Dalam himpunan samar setiap anggota himpunan mempunyai derajat keanggotaan atau fungsi keanggotaan μx(xk), besarnya antara 0 dan 1, misalnya X menyatakan himpunan bilangan kecil : X = { x1|μx(x1), ...........Xk|μx (xk)........} Bilangan 0.001 mempunyai derajat keanggotaan besar 0,99 sedangkan bilangan besar misalnya 10 mempunyai derajat keanggotaan kecil 0,1. Pada umumnya logika samar bekerja dengan basis pengetahuan yang berisi kaidah
11
berbentuk : Jika x1 ∈X k1 dan x 2∈ X k2 dan ....maka Z k ∈ Zk1k2 , ....k = 1,2,3…… Dengan memanfaatkan jaringan neural artifisial kita dapat berpikir bahwa masukan pada k kaidah dapat kita pandang scbagai sekumpulan angka yang kita sebut "vektor" masukan (x1,x2 .....) dan keluarannya yang berupa sasaran
Zk
merupakan fungsi dari
x1, dan parameter dari fungsi keanggotaan. Kaidah ini dapat dipetakan ke dalam suatu jaringan. Parameter dapat diatur dengan proses belajar seperti dalam contoh jaringan neural artifisial yang dapat dilatih untuk mengasosiasikan "vektor" masukan dan keluaran tsb. Keluaranya
Z k
= f(x1,x2, µxk1,( x1), µxk2 (x2), µzk1k2 (zk)) . Umumnya kaidah yang
terkena ketika ada masukan xi dan x; akan lebih dari satu kaidah, Misalnya yang terkena ada dua kaidah maka proses penegasan mengliasilkan (wk Zk + Wk+i Zk+i)/(Wk +wk+1) dengan bobot Wk yang ditentukan oleh derajat keanggotaan masukan, biasanya dapat dipilih Wk = μxk1(x1) μxk2(x2)
Sebagai contoh dapat diambil fungsi
keanggotaan dapat diambil berbentuk sbb. : Dengan cara ini parameter a1 dan c1 pada fungsi keanggotaan dapat ditentukan memakai data masukan dan keluaran melalui proses "belajar" yaitu secara iterasi seperti yang dilakukan dalam mengatur bobot jaringan neural artifisial. Di California sistem seperti ini dapat dipakai untuk prakiraan cuaca dengan memilih perubahan tekanan, arah angina, dan kelembaban sebagai masukan dan curah hujan sebagai keluaran. Kemudian parameter dalam fungsi keanggotaan dapat diatur berdasarkan data masukan dan keluaran pada waktu lampau. Setelah parameter ini diperoleh hasilnya dapat dipakai untuk memprediksi pada masa depan. Adaptive Neuro-Fuzzy Inference System (ANFIS) Sistem inferensi fuzzy jaringan saraf adaptif (ANFIS = Adaptive Neuro-Fuzzy Inference System) merupakan salah satu model yang digunakan untuk memproses data deret waktu dengan struktur pengolahan data yang paralel. Salah satu skema ANFIS telah dikemhangkan oleh SUGENO dengan kaidah sbb. Ini
12
Jika x ∈ Ai, dan y ∈ Bj dan ....maka zij =fij( x1,x2,…….) I = 1.2,3.......; j = 1.2,3...... dan mempunyai skema arsitektur seperti : layer 1
Gambar 1 Skema arsitektur model fuzzy Sugeno orde satu dengan dua input
Pada ANFIS Sugeno orde pertama, dimisalkan ada dua masukan yaitu x dan y serta keluaran fn. Pada Gambar 1 ditunjukkan 5 layer yang berkorelasi secara parallel dimana masing-masing layer dapat dijelaskan sebagai berikut: Layer 1 : Setiap node ke-i dalam layer ini adalah sebuah titik dengan suatu fungsi node, dengan notasi keluaran adalah QAi yaitu : OAi(x)= µAi (x). untuk i=1,2, atau OAj(y)= µBj (y), untuk j=1,2,
(2.1)
dengan x dan y merupakan input dari node ke-i dan OAi merupakan derajat keanggotaan dari himpunan fuzzy A=(A1,A2,B1 atau B2) dengan fungsi keanggotaan A adalah :
µ A1 ( x) =
1 x − c1 a1
2b
(2.2)
dengan ai, bi dan ci, adalah parameter himpunan.
13
Layer 2 : Notasi [] menyatakan keluaran dari hasil perkalian dari semua sinyal yang masuk yaitu : O2i = w1= µAi (x) µBj (y), (2.3) Laver 3 : Notasi N pada node ke-i : O 3i = wi =
w1 w1 + w2
, i = 1,2 (2.4)
disebut faktor normalisasi Layer 4 : Node ke-i merupakan node adaptif dengan fungsi node : O A3 = w A f u = w A ( p1 x + q1 y + ru ) (2.5) dengan w, sehagai faktor normalisasi pada layer ke-3 dan (p i, qj, rij) adalah parameter himpunan dari node ini. Layer 5 : Node tunggal pada layer ini adalah node yang ditentukan dengan notasi Σ yang dihitung dari keseluruhan output yaitu :
O = ∑ w A fu i
∑w f = ∑w A
i
u
(2.6)
i
i
Selanjutnya data input yang akan diolah dengan ANFIS9) terlebih dahulu dihilangkan noise-nya dengan melakukan tapis (filter) lolos rendah (low-pass) atau moving average. Time series setelah ditapis dijadikan sebagai input ANFIS, dibagi menjadi dua bagian yaitu satu hagian pertama sebanyak 500 poin data (500 bulan) digunakan sebagai data pembelajaran (training data) dan sisanya 64 poin data (64 bulan) digunakan sebagai cheking data. Prediksi data deret waktu (time Series) yang dilakukan menggunakan nilai yang telah diketahui pada time series yang akan diprediksi. Dengan memisalkannya sehagai t, maka prediksi nilai pada titik yang sama ke nilai berikutnya dapat dituliskan sebagai (t + P). dengan P adalah titik sampel yang akan diprediksi. Tiap-
14
tiap data dituliskan dalam satuan waktu. yaitu : (x(t-(D-1))P ,..., x(t - P),x(t)). Dalam hal ini, dilakukan setting secara umum untuk prediksi time series SSTA Niño 3.4, dengan mengambil harga D dan P yang berbeda-beda. Dengan demikian, masingmasing harga t pada input data pembelajaran (training data) dan data uji (cheking data) memiliki empat vector dimensional yang dituliskan dalam bentuk : w(t) = [x(t – t03) x(t-t02) x(t-t01) x(t)]
(2.7)
Output data pembelajaran dihubungkan dengan prediksi titik data yaitu : S(t)-=[x(t + t01 ) x(t + t02)]
(2.8)
dengan t01, t02, dan t03 merupakan bilangan bulat dan x merupakan data awal yang akan diprediksi. Dengan demikian data prediksi dapat dibangkitkan (generates) beberapa titik ke depan melalui fungsi pembangkit: Data(t) = [ w(t) s(t) ]
(2.9)
Dengan pemilihan harga t01, t02, dan t03 yang berbeda-beda dalam makalah ini digunakan heberapa fungsi pembangkit sebagai berikut: a. Fungsi pernhangkit pertama yaitu : Data(t) = | x(t-3) x(t-2) x(t-l) x(t) x(t+l) x(t+2) |
(2.10a)
b. Fungsi pembangkit kedua yaitu : Data(t) = | x(t-6) x(t-4) x(t-2) x(t) x(t+2) x(t+4) |
(2.10b)
c. Fungsi pembangkit ketiga yaitu : Data(t) =| x(t-12) x(t-8) x(t-4) x(t) x(t+4) x(t+8) 1
(2.10c)
Untuk star training, dihutuhkan suatu struktur FIS (Fuzzy Inferensi system). Agar dapat ditentukan struktur dan parameter awal dari FIS untuk proses pembelajaran. Maka dipilih fungsi genfisl. Struktur FIS generate tersebut, berisi beberapa aturan fuzzy dan parameter linier dan nonlinier. Selain itu, untuk star training juga digunakan type fungsi anfis sesuai dengan metode yang digunakan. Selanjutnya, hasil prediksi berdasarkan ANFIS yang diperoleh dari 'training data' dan ‘'cheking data' SSTA dihasilkan melalui fungsi evalfis.
15
Tingkat kesalalian (error) prediksi berdasarkan ANFIS diketahui melalui selisih antara data awal dengan data hasil prediksi ANFIS, sedangkan kesalahan untuk ‘training data' dan 'cheking data' dapat diketahui melalui fungsi anfis. Setelah hasil prediksi yang diperoleh dengan metode ANFIS dianggap valid (tingkat kesalahan yang kecil), maka langkah selanjutnya adalah melakukan proses pembelajaran kedua guna memperoleh prediksi harga SSTA ke waktu berikutnya (prediksi untuk bulan > 624). Proses serta fungsi pembangkit yang digunakan sama seperti pada proses pembelajaran pertama. Hasil Dan Pembahasan Diantara ketiga fungsi pembangkit yang disajikan pada (2.10a-2.10c). diperoleh bahwa fungsi pembangkit : Data(t) = [x(t-3) x(t-2) x(t-l) x(t) x(t+l) x(t+2)] dinilai memiliki keakuratan prediksi yang tinggi dibandingkan fungsi pembangkit lainnya. Keakuratan fungsi pembangkit ini ditunjukkan berupa kesalahan hasil prediksi yang sangat kecil (lihat Gambar 6) dan kesalahan proses data pembelajaran dan data uji (lihat gambar 7). Keluaran deret waktu hasil prediksi ANFIS, selanjutnya dipot bersama dengan deret waktu data awal terfilter (Gambar 3). Data dan Hasil Prediksi SSTA Nino3.4
1960 1965 1970 1975 1980 1985 1990 1995 2000 Tahun
16
Gambar 3 Deret waktu SSTA Niňo 3.4. data awal (garis wama biru) dan data hasil prediksi ANFIS (garis wama merah).
Hasil Prediksi SSTA Nino3.4 (belum ada gambarnya) Kesesuaian antara data awal dengan hasil prediksi ANFIS ditunjukkan melalui korelasi silang dan error prediksi berturut-turut ditunjukkan seperti pada gambar 5, gambar 6, dan gambar 7 berikut.
Gambar5, 6,7 (belum ada gambar) Tingkat kesalahan prediksi ANFIS diperoleh sekitar ((-5) – 5) x 10-3 atau mempunyai orde sekitar 0.001. Sedangkan untuk ‘training data’ diperoleh RMSE (root-meansquares-error) sekitar 0,0014 dan ‘checking data’ diperoleh sekitar 0.0025. Oleh karena itu, keluaran ANFIS yang diperoleh dapat dianggap valid digunakan sebagai data pembelajaran kedua untuk prediksi harga SSTA ke tahun berikutnya. Data deret waktu hasil prediksi ANFIS seperti ditunjukkan gambar 4, digunakan sebagai data input pada proses pembelajaran kedua. Jumlah data yang digunakan untuk training data dan checking data sebanyak 561. Data tersebut juga dibagi dua dengan bagian pertama terdiri dari 500 data (500 bulan) digunakan sebagai data pembelajaran dan 61 data digunakan sebagai checking data. Data untuk t >624, dibangkitkan melalui fungsi pembangkit yang sama dengan proses pembelajaran yang pertama yaitu Data(t) = [ x(t-3) x(t-2) x(t-1) x(t) x(t+1) x(t+2) ] . Hasil prediksi beberapa bulan ditunjukkan sebagai berikut : 1. Hasil prediksi untuk 6 bulan. Gambar 8
(belum ada gambar)
17
Hasil prediksi (gambar 8) selanjutnya dijadikan sebagai data belajar untuk membangkitkan data 6 bulan ke depan berikutnya (fungsi pembangkit yang digunakan sama ). Hasil prediksi ini ditunjukkan pada gambar 9 berikut. 2. Hasil prediksi untuk 12 bulan. Gambar 8
(belum ada gambar) Gambar 8 kembali digunakan sebagai data belajar, untuk membangkitkan data berikutnya. Sehingga hasil prediksi 6 bulan tahun berikutnya. 3. Hasil prediksi untuk 6 bulan.
Hasil Prediksi SSTA Nine 3.4 (Jan 2003 - Juni 2003) (Gambar 10 Hasil) prediksi SSTA Nino 3.4 untuk bulan Januari - Juni 2003 Sebagai pembanding pada Gambar 11 ditunjukkan hasil prediksi Climate Prediction Center (CPC). SSTA hasil prediksi ANFIS dan CPC terlihat tidak berbeda jauh dengan puncak SSTA dari kedua hasil prediksi berkisar antara 1 - 20 C. Hasil prediksi yang diperoleh menunjukkan harga SSTA maksimum sekitar 1,84 "C yang terjadi sekitar bulan Maret 2003 dan awal munculnya SSTA hangat terjadi sekitar bulan Juli 2002 (≥ 0.50 C). Prediksi Kekeringan
18
Badan Meteorologi dan Geofisika telah membuat label tahun El Nino dalam kaitannya dengan persentase daerah yang mengalami kekeringan (yang mengalami hujan di bawah normal). Misalnya dalam tahun 1961, 94% daerah Indonesia mengalami hujan di bawah normal, tahun 1963, 92% mengalami hujan di bawah normal, dst. Dalam penelitian tahun ini El Nino sangat ditentukan oleh deret waktu anomali suhu permukaan laut SST nine 3.46). Intensitas El Nino dapat didefinisikan sebagai luas daerah di atas sumbu dari deret waktu anomaly SST8). Dari tabel BMG tsb. kita dapat mentransformasikannya menjadi grafik antara kekeringan di Indonesia (Y) terhadap intensitas El Nino (X) (lihat gambar). Jika didekati dengan regresi linear hasilnya sbb. ini, korelasi keseluruhan ialah R=0,57
atau R2= 0.32 tetapi terlihat jelas dalam grafik tsb. bahwa sebetulnya
korelasinya besar ketika intensitas El Nino tinggi dan rendah ketika intensitasnya rendah. Ini berarti bahwa intensitas El Nino tinggi akan menyebabkan kekeringan di Indonesia, tetapi ketika intensitas El Nino rendah pengaruh lain dapat menjadi dominan sehingga mungkin saja kekeringan terjadi
Polynomial Regression of Y on X Gambar ………
Dari residual plot kita tetap berkesimpulan bahwa untuk intensitas rendah galatnya lebih besar dari pada untuk intensitas tinggi. Hal ini berarti bahwa ketika intensitas rendah faktor lain dapat ikut menentukan kekeringan di Indonesia.
Residual Plot Gambar ………
Monsun yang lemah dapat pula menyebabkan kekeringan, sehingga untuk
19
mengungkapkan mekanisme kekeringan di Indonesia kita harus mempelajari interaksi antara El Nino dengan monsun yang penelitiannya sedang berlangsung dalam kelompok kami. Berdasarkan hasil ini dari prediksi SST nino 3.4 untuk tahun 2002 7), intensitas El Nino akan lemah sehingga kekeringan di Indonesia lebih dipengaruhi oleh faktor lain, misalnya monsun yang lemah. Penelitian lebih lajut masih diperlukan untuk dapat mengungkapkan faktor tsb., pendaerahan yang lebih rinci, dan pengemhangan cara prediksi yang lebih baik. Daftar Pustaka 1. Jang. et al. Neuro-Fuzzy and Soft computing. Prentice Hall,1998. 2. T. Kohonen. the "Neural" Phonetic Typewriter, Computer, Mar. 1988. 3. .I.A. Feldman. et. al.. Computing with Structured Neural Networks, Computer, Mar. 1988. 4. R.C. Eberhart. R.W. Dobbins, Neural Network PC Tools, Academic Press, 1990. 5. B. Kosko. Neural Networks For Signal Processing. Prentice Hall Int., 1992._ 6. Zadrach 1 . Dupe. The Houw Liong, Prediction Nino 3.4 using Simple Harmonic Model.International Conf. For Science and Technology Assesment of Global Climate Change. Jakarta. 1999. 7. Zadrach I,. Dupe. I he Houw Liong. El Nino/ La Nina Forcasting Using Adaptive 8. Neuro-Fuzzy Inference System (ANFIS), (submitted to a seminar in Beijing,2001). 9. The H. I... Zadrach I.. Dupe, Prediksi kekeringan di Indonesia dengan JNA/ ANFIS. Temu llmiah Prediksi Cuaca dan Iklim Nasional 2001, Lapan, 2001. 10. Bannu. Ikhsan. The H.L., Model Prediksi Temperatur Muka Laut Daerah Nino 3.4 Berbasis Anns. Jumal Fisika HFL Vol 0506, A5, 2002.
20