Anda di halaman 1dari 164

SKRIPSI

SISTEM PERAMALAN KENAIKAN PERMUKAAN AIR DENGAN


ARTIFICIAL NEURAL NETWORKS BACKPROPAGATION
(Studi Kasus: Desa Tanjung Jaya, Kelurahan Surabaya, Kecamatan Sungai
Serut, Kota Bengkulu)

Jenjang Strata I

Oleh
ILI SUSANTI
G1A010009

PROGRAM STUDI INFORMATIKA


FAKULTAS TEKNIK
UNIVERSITAS BENGKULU
2014
SISTEM PERAMALAN KENAIKAN PERMUKAAN AIR DENGAN
ARTIFICIAL NEURAL NETWORK BACKPROPAGATION

(Studi Kasus: Desa Tanjung Jaya, Kelurahan Surabaya, Kecamatan Sungai


Serut, Kota Bengkulu)

SKRIPSI
Diajukan Sebagai Salah Satu Syarat Untuk Memperoleh Gelar
Sarjana Strata 1 (Satu) Pada Fakultas Teknik
Program Studi Teknik Informatika Universitas Bengkulu

Oleh
ILI SUSANTI
G1A 010009

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS TEKNIK
UNIVERSITAS BENGKULU

2014LEMBAR PENGESAHAN
SISTEM PERAMALAN KENAIKAN PERMUKAAN AIR DENGAN
ARTIFICIAL NEURAL NETWORK BACKPROPAGATION
(Studi Kasus : Desa Tanjung Jaya, Kelurahan Surabaya, Kecamatan Sungai
Serut, Kota Bengkulu)
SKRIPSI
Program Studi Teknik Informatika
Jenjang Strata 1
Oleh
ILI SUSANTI
G1A010009
Telah Diperiksa dan Disetujui Oleh,
Bengkulu,
Juni 2014
Pembimbing Utama

Pembimbing Pendamping

Rusdi Efendi, S. T., M. Kom

Dr. Gusta Gunawan, S. T., M. T

NIP. 19810112 200501 1 002

NIP. 19730318 199802 1 001

Mengetahui,
Ketua Program Studi Teknik Informatika

Desi Andreswari, S. T., M. Cs


NIP 19781207 200501 1 001
3

LEMBAR PENGESAHAN
SISTEM PERAMALAN KENAIKAN PERMUKAAN AIR DENGAN
ARTIFICIAL NEURAL NETWORK BACKPROPAGATION
(Studi Kasus: Desa Tanjung Jaya, Kelurahan Surabaya, Kecamatan Sungai
Serut, Kota Bengkulu)
SKRIPSI
Program Studi Teknik Informatika
Jenjang Strata 1
Oleh
ILI SUSANTI
G1A010009
Skripsi ini telah Dipertahankan dan Diuji Oleh Dewan Penguji
Pada Hari Kamis , 19 Juni 2014
Bengkulu,

Juni 2014

Pembimbing Utama

Pembimbing Pendamping

Rusdi Efendi, S. T ., M. Kom

Dr. Gusta Gunawan, S. T., M. T

NIP. 19810112 200501 1 002

NIP. 19730318 199802 1 001

Penguji Utama

Penguji Pendamping

Aan Erlansari, S.T., M.Eng

Endina Putri P, S.T., M.Kom

NIP. 19811222 200801 1 011

NIP. 19870127 201212 2 001


Mengetahui,
Dekan Fakultas Teknik

Khairul Amri,. S. T., M. T


NIP. 19720212 199802 1 002

MOTTO DAN PERSEMBAHAN


MOTTO
Dimana ada kemauan di situ ada
jalan, tidak ada kata tidak bisa
selagi kita berusaha dan berdoa
Hidup adalah perjuangan

PERSEMBAHAN
Skripsi ini kupersembahkan untuk :
Nenek ku tersayang (Amidah) yang
selalu mendoakan ku agar cepat
sukses
Ayah dan Ibu tercinta (Saparudin
dan Yati) yang selalu mendoakan
dan mendorong semangat belajar
Ku untuk mencapai keberhasilan.
Saudara-saudaraku terkasih (Ayuk
Septiani, Ayuk Gusti dan Adek
Penti) yang selalu memberikan
semangat dan motivasi.
Liebe Mich (Sumarto Yudahirawan)
yang selalu menjadi inspirasi dan
motivator dalam hidup Ku.
6

Sahabatku tersayang (Lisya


Agusdina, Gita Triyana, Fatin Ulfah
Karimah, Ancemona Yudha, Dyan
Kemalasari) tempat curahan hatiku
saat suka dan duka.
Sahabat-sahabat terbaik Teknik
dan Teknik Informatika 2010
Almamaterku

SISTEM PERAMALAN KENAIKAN PERMUKAAN AIR DENGAN


ARTIFICIAL NEURAL NETWORK BACKPROPAGATION
(Studi Kasus : Desa Tanjung Jaya, Kelurahan Surabaya, Kecamatan Sungai
Serut, Kota Bengkulu)
Oleh
Ili Susanti
NPM G1A01009

Abstrak
Penelitian ini bertujuan untuk meramalkan kenaikan permukaan air 1 (satu) jam
kedepan. Dalam penelitian ini, sistem yang digunakan adalah sistem Jaringan Syaraf
Tiruan Backpropagation dengan metode pelatihan dan pengujian Levenberg-Marquardt.
Jaringan Syaraf Tiruan (JST) adalah model sistem komputasi yang berkembang sangat
pesat yang dapat bekerja seperti syaraf biologis yaitu dapat mengenali pola-pola yang
telah diajarkan. Langkah-langkah penelitian meliputi analisis kebutuhan sistem,
pengumpulan data, perancangan perangkat lunak dan pengujian sistem. Pada penelitian
ini, sebagai masukkan JST adalah data koefisien aliran, intensitas curah hujan, dan luas
daerah aliran sungai yang diolah menjadi kenaikan permukaan air selama satu hari (24
jam), sedangkan sebagai keluaran JST adalah kenaikan permukaan air untuk satu jam
kemudian. Perangkat lunak ini dibangun dengan menggunakan bahasa pemrograman
Matlab R2008b. Pengujian dilakukan untuk mencari arsitektur dan nilai parameter JST
yang paling optimal pada proses pelatihan. Selain itu, pengujian dilakukan untuk
mengetahui seberapa besar sistem mengenali data yang dimasukkan setelah melewati
tahap pelatihan. Dari penelitian yang telah dilakukan, Jaringan Syaraf Tiruan dengan
metode Backpropagation yang sudah dilatih dengan data koefisien aliran, intensitas curah
hujan, dan luas daerah aliran sungai, dapat digunakan untuk memprediksi kenaikan
permukaan air dengan persentase kesalahan 1.76625 %. Pada pengujian arsitektur dan
parameter pelatihan, didapat bahwa sistem akan optimal dengan jumlah neuron 10 dan 5,
laju pembelajaran 0.1 dan momentum 0.8.
Kata kunci: Kenaikan permukaan air, Jaringan Syaraf Tiruan, Backpropagation,
Levenberg-Marquardt

INCREASE IN SURFACE WATER SYSTEM PREDICTION WITH


ARTIFICIAL NEURAL NETWORKS BACKPROPAGATION
(Case Study : The village of Tanjung Jaya, Village of Surabaya, Serut River
District, the city of Bengkulu)
By
Ili Susanti
NPM G1A010009

Abstract
This study aims to predict the surface level rise of 1 (one) hour ahead. In this
study, the system used a system with Backpropagation Neural Network training method
and Levenberg-Marquardt testing. Artificial Neural Network (ANN) is a computational
system model that is growing very rapidly which can work like biological neurons are
able to recognize patterns that have been taught. Research steps include system
requirements analysis, data collection, design and testing of software systems. In this
study, the ANN is input the data flow coefficient, rainfall intensity, and the vast watershed
that is processed into level rise for one day (24 hours), whereas the ANN output is the
water level to rise one hour later. This software is depvelopt using programming
language Matlab R2008b. Testing is performed to find the architecture and parameter
values on the optimal ANN training process. In addition, testing was conducted to
determine how much the system recognize the data entered after passing the training
phase. From the research that has been done, Neural Network with Backpropagation
method that has been trained with the data flow coefficient, rainfall intensity, and the vast
watershed, can be used to predict the flood discharge with an error percentage
1.76625%. In testing the architecture and training parameters, obtained that the system
will be optimized by the number of 10 and 5 neurons, learning rate of 0.1 and momentum
of 0.8.
Keyword: Increase in surface water, Artificial Neural Network, Backpropagation,
Levenberg-Marquardt

KATA PENGANTAR

Alhamdulillahirobbilalamin, penulis ucapkan kepada Allah SWT atas


rahmat dan nikmat yang telah diberikan-Nya sehingga

penulis

dapat

menyelesaikan skripsi yang berjudul Sitem Peramalan Kenaikan Permukaan


Air Dengan Artificial Neural Network Backpropagation
Skripsi ini disusun sebagai salah satu syarat untuk memperoleh gelar
Sarjana Strata Satu (S1) di Program Studi Teknik Informatika Fakultas
Teknik Universitas Bengkulu. Selesainya penulisan dan penyusunan skripsi
ini tidak terlepas dari bantuan berbagai pihak. Pada kesempatan ini penulis
mengucapkan terima kasih kepada :
1. Bapak Khairul Amri, S.T., M.T., sebagai Dekan Fakultas Teknik
Universitas Bengkulu yang turut mendukung penulis untuk menyelesaikan
skripsi ini.
2. Ibu Desi Andreswari, S.T., M.Cs sebagai Ketua Program Studi Teknik
Informatika yang telah memberikan dukungan dan bantuan sehingga
penulis dapat menjalankan setiap tahapan dengan baik dan lancar.
3. Bapak Drs. Asahar Johar, M. Si selaku dosen Pembimbing Akademik
yang telah memberikan bimbingan kepada penulis dalam perkuliahan
hingga penulis dapat menyelesaikan perkuliahan dengan baik.

10

4. Bapak Rusdi Efendi, S.T., M. Kom selaku dosen pembimbing utama


yang selalu meluangkan waktu untuk memberikan bimbingan dan
arahan yang sangat berharga kepada penulis dalam penyelesaian skripsi
ini.
5. Bapak Dr. Gusta Gunawan, S.T,. M.T selaku

dosen

pembimbing

pendamping yang penuh kesungguhan, kecermatan dan kesabaran


telah meluangkan waktu untuk memberikan bimbingan dan motivasi
bagi penulis dalam penyelesaian skripsi ini.
6. Bapak Aan Erlansari, S.T., M.Eng dan Ibu Endina Putri Purwandari, S.T.,
M.Kom selaku dosen penguji pendamping yang telah memberikan
dukungan dan bantuan sehingga penulis dapat menjalankan setiap tahapan
dengan baik dan lancar, serta telah meluangkan waktu untuk menguji
penulis.
7. Segenap Bapak dan Ibu Dosen Pengajar di Fakultas Teknik terutama
Program

Studi Teknik

Informatika

beserta

staf

administrasi

di

Fakultas Teknik Universitas Bengkulu.


8. Teman-teman seperjuangan Teknik Informatika angkatan 2010, kakak
tingkat dan adik-adik tingkatku di Teknik dan Teknik Informatika
Universitas

Bengkulu yang telah banyak membantu dan memberikan

motivasi dalam penyelesaian skripsi ini.


9. Semua pihak yang tidak bisa disebutkan satu persatu yang telah membantu
penulis dalam menyelesaikan skripsi ini.

11

Penulis berharap semoga semua perhatian, motivasi, bimbingan dan


dukungan yang telah diberikan menjadi amal dan mendapat balasan yang setimpal
dari Allah SWT. Semoga skripsi ini dapat bermanfaat bagi semua pihak di masa
yang akan datang.

Bengkulu,

Juni 2014

Ili Susanti
G1A010009

12

DAFTAR ISI
HALAMAN JUDUL.............................................................................................................i
MOTTO DAN PERSEMBAHAN..................................................................iv
Abstrak..................................................................................................... v
Abstract................................................................................................... vi
KATA PENGANTAR.................................................................................. vii
DAFTAR TABEL...................................................................................... xii
DAFTAR GAMBAR................................................................................. xiii
DAFTAR LAMPIRAN............................................................................... xiv
BAB I PENDAHULUAN............................................................................. 1
1.1 Latar Belakang.................................................................................... 1
1.2 Rumusan Masalah................................................................................ 4
1.3 Batasan Masalah.................................................................................. 4
1.4 Tujuan dan Manfaat Penelitian................................................................5
1.5 Sistematika Penulisan...........................................................................5
BAB II LANDASAN TEORI.........................................................................7
2.1

Curah Hujan.................................................................................... 7

2.2

Bencana Banjir............................................................................... 7

2.3

Debit Banjir................................................................................... 8

2.4

Koefisien Aliran (C)........................................................................8

2.5 Jaringan Syaraf Tiruan (Artificial Neural Network)...................................10


2.5.1 Arsitektur Jaringan.....................................................................13
2.5.2 Metode Pembelajaran..................................................................15
2.5.3 Fungsi Aktivasi.........................................................................16
2.5.4 Algoritma Backpropagation..........................................................17
2.5.5 Algoritma Levenberg-Marquardt....................................................23
2.6 Metode Pengembangan Sistem............................................................25
2.7 Data Flow Diagram (DFD)................................................................28
2.8 Diagram Alir (Flowchart)..................................................................30
2.9 Perancangan Database......................................................................33
2.9.1 Relasi Antar Entitas (Entity Relational)............................................33
2.10 MySQL........................................................................................ 35
BAB III METODE PENELITIAN.................................................................36
3.1

Jenis Penelitian............................................................................. 36

3.2

Tempat dan Waktu Penelitian............................................................37

3.3

Sarana Pendukung.........................................................................37
13

3.4

Teknik Pengumpulan Data................................................................37

3.5

Metode Pengembangan Sistem..........................................................39

3.6

Metode Pengujian..........................................................................41

3.7

Jadwal Penelitian..........................................................................41

BAB IV ANALISIS DAN PERANCANGAN SISTEM......................................43


4.1 Analisis Sistem............................................................................... 43
4.1.1. Analisis Kebutuhan Sistem...........................................................44
4.1.2. Analisis Data............................................................................. 45
4.1.3 Analisis Flowchart......................................................................46
4.2. Perancangan Sistem.........................................................................48
4.2.1. Perancangan Data Flow Diagram(DFD)............................................48
4.2.2. Perancangan Antarmuka (User Interface).........................................52
4.3. Struktur Basis Data..........................................................................61
BAB V HASIL DAN PEMBAHASAN...........................................................63
5.1 Implementasi Sistem...........................................................................63
5.2 Implementasi Form Menu Prediksi........................................................64
5.3 Implementasi Form Bantuan...............................................................80
5.4. Implementasi Form Menu Tentang.......................................................80
5.5 Implementasi Form Menu Keluar........................................................81
5.6 Pengujian Sistem............................................................................. 82
5.7 Pengujian Arsitektur Jaringan.............................................................85
BAB VI KESIMPULAN DAN SARAN.........................................................88
6.1 Kesimpulan................................................................................... 88
6.2 Saran........................................................................................... 88
DAFTAR PUSTAKA................................................................................. 90
LAMPIRAN............................................................................................ 92

14

DAFTAR TABEL

Tabel 2.1 Nilai Koefisien Aliran Untuk Berbagai Penggunaan Lahan................................9


Tabel 2.2 Perbandingan Hasil Pelatihan beberapa metode pelatihan JST dengan
menggunakan data pelatihan yang sama...........................................................................22
Tabel 2.3 SimbolSimbol DFD........................................................................................29
Tabel 2.4 Simbol-Simbol Flowchart...............................................................................32
Tabel 3.1. Jadwal Penelitian.............................................................................................42
Tabel 4.1. Data Latih........................................................................................................61
Tabel 4.2. Data Uji...........................................................................................................61
Tabel 4.3. Data Ramal......................................................................................................61
Tabel 4.4. Data Validasi....................................................................................................62
Tabel 5.1. Perbandingan antara Data Target dengan Data Hasil Prediksi.........................78
Tabel 5.2. Perbandingan Data Target dan Data Hasil Prediksi tiap jam............................82

15

DAFTAR GAMBAR

Gambar 2.1 Struktur Jaringan Syaraf Tiruan....................................................................13


Gambar 2.2 Model sekuensial linier.................................................................................26
Gambar 4.1 Flowchart Proses Sistem Peramalan Kenaikan permukaan air secara umum 46
Gambar 4.2. Diagram Konteks.........................................................................................49
Gambar 4.3. DFD Level 1................................................................................................50
Gambar 4.4 Rancangan Antarmuka Form Menu Utama..................................................53
Gambar 4.5 Rancangan Antarmuka Form Prediksi..........................................................54
Gambar 4.6. Rancangan Antarmuka Form Bantuan........................................................59
Gambar 4.7. Rancangan Antarmuka Form Tentang..........................................................60
Gambar 4.8. Rancangan Antarmuka Form Keluar...........................................................60
Gambar 5.1 Antarmuka Form Menu Utama.....................................................................64
Gambar 5.2. Antarmuka Form Menu Prediksi.................................................................64
Gambar 5.3. Atribut-Atribut Pada Form Menu Prediksi..................................................65
Gambar 5.4. Tampilan Proses Training............................................................................68
Gambar 5.5. Tampilan Plot Performance.........................................................................69
Gambar 5.6. Tampilan Plot Training State.......................................................................70
Gambar 5.7. Tampilan Plot Regression............................................................................71
Gambar 5.8. Hubungan antara target dengan output jaringan, untuk data pelatihan.........72
Gambar 5.9. Perbandingan antara target dengan output jaringan, untuk data pelatihan....73
Gambar 5.10. Hubungan antara target dengan output jaringan, untuk data pengujian......75
Gambar 5.11. Perbandingan antara target dengan output jaringan, untuk data pengujian.76
Gambar 5.12. Hasil Prediksi Kenaikan permukaan air pada Tanggal 7 Februari..............77
Gambar 5.13. Form Menu Bantuan..................................................................................80
Gambar 5.14. Form Menu Tentang..................................................................................81
Gambar 5.15. Form Menu Keluar....................................................................................81

16

DAFTAR LAMPIRAN
LAMPIRAN 1 Perhitungan Manual Data Pelatihan......................................................A1-1
LAMPIRAN 2 Perhitungan Manual Data Uji................................................................B1-1
LAMPIRAN 3 Perhitungan Manual Data Ramal..........................................................C1-1
LAMPIRAN 4 Pengujian Arsitektur Jaringan...............................................................D1-1

17

BAB I
PENDAHULUAN

1.1 Latar Belakang


Banjir adalah aliran/genangan air yang menimbulkan kerugian ekonomi
atau bahkan menyebabkan kehilangan jiwa. Aliran/genangan air ini dapat
terjadi karena adanya luapan-luapan pada daerah di kanan atau kiri
sungai/saluran akibat alur sungai yang tidak memiliki kapasitas yang cukup
bagi debit aliran yang lewat (Setyawan, 2008).
Cara penanggulangan banjir terbagi menjadi 2 (dua) yaitu upaya struktur
dan non struktur. Upaya struktur antara lain pembangunan waduk, floodway,
perbaikkan alur sungai, retardasi (waduk alam). Dalam upaya pengendalian
banjir, selain melalui upaya struktur dengan membangun bangunan prasarana
pengairan pengendalian banjir, perlu juga dikembangkan upaya non struktur
antara lain Flood Planing Zooning dan Flood Forecasting Warning System
(FFWS) atau sistem prediksi dan peringatan dini banjir yang meliputi kegiatan
prediksi (memperkirakan) besaran dan kapan akan terjadi banjir sekaligus
pemberitahuan kepada masyarakat yang kemungkinan akan terjadinya banjir
(Windarto, 2008).
Banjir dapat diprediksi dengan melakukan analisa kenaikan permukaan air
di suatu tempat tertentu yang dianggap sebagai tempat terjadinya banjir.
Proses perubahan naik turunnya kenaikan permukaan air di suatu daerah aliran
sungai secara teoritis dapat dijelaskan, tetapi karena terdapat banyak variabel
maka model matematika sulit dibuat. Salah satu metode yang dapat digunakan
1

adalah Jaringan Syaraf Tiruan atau Artificial Neural Network (ANN). Jaringan
Syaraf Tiruan merupakan salah satu kecerdasan buatan yang merupakan
representasi tiruan dari otak manusia yang selalu mencoba untuk
mensimulasikan proses pembelajaran pada otak manusia tersebut. Model ini
merupakan model kotak hitam (black box model), sehingga dalam
penerapannya tidak membutuhkan pengetahuan yang kompleks antar berbagai
aspek dalam melakukan proses pemodelan faktor-faktor tersebut. Jaringan
Syaraf Tiruan (Artificial Neural Network) terdapat beberapa metode pelatihan
yakni diantaranya model Hebb, Perceptron, Adaline, Backpropagation,
Jaringan Kohonen, Radial Basis Function, dan lain-lain.
Kelemahan Jaringan Syaraf Tiruan (JST) yang terdiri dari layar tunggal
(seperti model Hebb, Perceptron, Adaline) membuat perkembangan JST
menjadi terhenti pada tahun 1970 an. Penemuan Backpropagation yang terdiri
dari beberapa layar membuka kembali cakrawala. Terlebih setelah berhasil
ditemukannya berbagai aplikasi yang dapat diselesaikan dengan
Backpropagation, membuat JST semakin diminati orang (Jek Siang, 2005).
JST dengan layar tunggal memiliki keterbatasan dalam pengenalan pola.
Kelemahan ini bisa ditanggulangi dengan menambahkan satu/beberapa layar
tersembunyi diantara layar masukkan dan keluaran. Seperti halnya model JST
lain, Backpropagation melatih jaringan untuk mendapatkan keseimbangan
antara kemampuan jaringan untuk mengenali pola yang digunakan selama
pelatihan serta kemampuan jaringan untuk memberikan respon yang benar
terhadap pola masukkan yang serupa (tapi tidak sama) dengan pola yang
dipakai selama pelatihan. Backpropagation merupakan salah satu metode yang
digunakan untuk peramalan dengan time series seperti penelitian yang

dilakukan oleh Setyawan (2008) dalam skripsinya yang berjudul Peramalan


Ketinggian Muka Air Dengan Jaringan Syaraf Tiruan Perambatan-Balik.
Peramalan dengan time series berarti memprediksikan apa yang akan terjadi di
masa datang berdasarkan pola deret data masa lalu. Oleh karena itu peramalan
time series bertujuan memprediksikan apa yang akan terjadi, tanpa
mengetahui mengapa hal itu terjadi. Sebab pada dasarnya peramalan ini
memperlakukan sistem sebagai kotak hitam (black box) yang tidak diketahui
mekanisme didalamnya.
Berdasarkan hasil pengamatan bahwa di Desa Tanjung Jaya, Kelurahan
Surabaya, Kecamatan Sungai Serut terlihat hampir setiap tahun mengalami
banjir. kejadian ini berlangsung dari bulan Desember sampai dengan dengan
bulan Maret. Pada periode bulan tersebut curah hujan yang terjadi cukup
tinggi. Berdasarkan data intensitas curah hujan yang diperoleh dari BMKG
pada tahun 2010, pada bulan Desember sampai dengan Maret, intensitas curah
hujan rata-rata di daerah ini berkisar antara 3.7mm/jam sampai dengan
32.72mm/jam. Sementara daya tampung sungai di daerah ini berkisar antara
109.48 m3/ detik atau 0.03 m3/jam. Hal ini menyebabkan terjadi banjir pada
tiap tahun.
Berdasarkan latar belakang diatas, maka penelitian mengenai Peramalan
Kenaikan Permukaan Air Dengan Artificial Neural Networks
Backpropagation penting untuk dilakukan.

1.2 Rumusan Masalah


Berdasarkan latar belakang dapat dirumuskan permasalahan adalah :
Bagaimana membangun suatu sistem informasi berbasis artificial neural
networks backpropagation untuk meramalkan kenaikan permukaan air.

1.3 Batasan Masalah


Batasan masalah dalam penelitian ini sebagai berikut:
1. Pada penelitian ini data yang akan digunakan sebagai data latih
(training) adalah data koefisien aliran, luas daerah aliran sungai, dan
data intensitas curah hujan yang digunakan adalah data sekunder dari
BMKG dan dianggap sudah valid sehingga tidak dilakukan
pengukuran ulang.
2. Model ini diujikan untuk meramalkan kenaikan permukaan air jangka
pendek di suatu daerah aliran sungai (DAS) di wilayah hilir yaitu di
Desa Tanjung Jaya, Keluaraha Surabaya, Kecamatan Sungai Serut,
Kota Bengkulu.
3. Hasil dari penelitian ini adalah berupa grafik yang berisi mengenai
informasi peramalan kenaikan permukaan air satu jam kemudian
4. Data masukkan yang digunakan berupa data time series yang
diimplementasikan kedalam database dengan menggunakan MySQL.
5. Untuk pembelajaran Artificial Neural Network, menggunakan
algoritma backpropagation dengan metode pelatihan dan pengujian
Levenberg-Marquardt.
6. Pada penelitian ini tidak menghitung pendangkalan kedalaman sungai

1.4 Tujuan dan Manfaat Penelitian


Tujuan dari tugas akhir ini adalah terbangunnya sistem perangkat lunak
yang dapat digunakan untuk meramalkan besarnya kenaikan permukaan air
dengan menggunakan Artificial Neural Networks Backpropagation.
Sedangkan manfaat dari penelitian ini mencakup 2 bagian yaitu sebagai
berikut:
1) Bagi penulis, dapat mengimplementasikan ilmu yang diperoleh selama di
bangku perkuliahan.
2) Bagi pengguna perangkat lunak, dapat memberikan kemudahan dalam
meramalkan besar kenaikan permukaan air.

1.5 Sistematika Penulisan


Skripsi ini tersusun dari enam bab, tersusun sistematis dengan tujuan
mempermudah pembacaan yang lebih akurat. Dalam penyusunan tugas akhir
ini, sistematika penulisan dibagi menjadi beberapa bab sebagai berikut:
BAB I PENDAHULUAN
Bab ini berisi tentang latar belakang yang memunculkan suatu permasalahan
sehingga dibutuhkan solusi untuk mengatasinya. Pada bab ini juga berisi
rumusan masalah, batasan masalah, manfaat dan tujuan penelitian, serta
sistematika penulisan.
BAB II LANDASAN TEORI
Bab ini berisi tinjauan pustaka yang berisikan teori-teori secara garis besar
yang berhubungan dengan penelitian.
BAB III METODE PENELITIAN
Bab ini berisi tentang metode-metode yang digunakan dalam penelitian,
seperti teknik pengumpulan data, metode pengembangan sistem, metode
pengujian dan jadwal penelitian.
5

BAB IV ANALISIS DAN DESAIN PERANGKAT LUNAK


Bab ini menjelaskan setiap tahapan analisis dan perancangan sistem aplikasi
yang akan dibangun dalam penelitian meliputi perencanaan sistem, analisis
sistem, desain sistem dan implementasi sistem.
BAB V HASIL DAN PEMBAHASAN
Bab ini merupakan bab yang berisi hasil dan pembahasan yang menguraikan
hasil perancangan sistem dan implementasinya.
BAB VI PENUTUP
Bab ini merupakan bab penutup yang merupakan bab terakhir yang berisi
kesimpulan dan saran dari pembuatan tugas akhir sampai ke pengembangan
perangkat lunak kedepannya.

BAB II
LANDASAN TEORI

Adapun teori yang digunakan sebagai dasar dalam penelitian ini antara lain
teori tentang Bencana Banjir, Debit Banjir, Curah Hujan, Jaringan Syaraf Tiruan
(Artificial Neural Network), Arsitektur Jaringan, Metode Pembelajaran, Fungsi
Aktivasi, Algoritma Backpropagation, Metode Pengembangan Sistem, Data Flow
Diagram, dan Flowchart.
2.1

Curah Hujan
Curah hujan adalah jumlah air yang jatuh di permukaan tanah datar selama
periode tertentu yang diukur dengan satuan tinggi milimeter (mm) di atas
permukaan horizontal. Dalam penjelasan lain curah hujan juga dapat
diartikan sebagai ketinggian air hujan yang terkumpul dalam tempat yang
datar, tidak menguap (evaporasi), tidak meresap (infiltrasi) dan tidak
mengalir (Nasution, 2011).

2.2

Bencana Banjir

Banjir adalah aliran/ genangan air yang menimbulkan kerugian ekonomi atau
bahkan menyebabkan kehilangan jiwa. Aliran/genangan ini dapat terjadi
karena adanya luapan-luapan pada daerah di kanan atau kiri sungai/saluran
akibat alur sungai tidak memiliki kapasitas yang cukup bagi debit aliran
yang lewat (Setyawan, 2008).
Secara umum, terdapat tiga istilah pengertian banjir yang dikaitkan
dengan sungai di masyarakat yaitu:
7

1. Suatu sungai dikatakan banjir apabila terjadi peningkatan debit aliran


yang relatif besar, pengertian ini biasa digunakan oleh para petugas
hidrologi dan masyarakat umum /awam setempat.
2. Suatu sungai dikatakan banjir apabila aliran air melimpas diluar alur
sungai, pengertian ini biasa dipakai oleh instansi pengelola sungai
/pengendali banjir.
3. Suatu sungai dikatakan banjir apabila aliran air melimpas ke luar alur
sungai dan menimbulkan gangguan terhadap manusia. Pengertian ini
biasa digunakan oleh media dalam kaitannya dengan informasi bencana
banjir.

2.3

Debit Banjir
Debit banjir adalah aliran air yang berada di atas permukaan tanah
sebagai akibat dari pengaruh curah hujan yang lebih besar dibandingkan
dengan daya tampung sungai atau kapasitas sungai. Adapun rumus
matematika dari debit banjir adalah sebagai berikut:

Q = C. I. A........................................................................................................(2.1)
Dimana:
Q = debit/aliran banjir (m3/ jam)
I = Intensitas hujan satuan (mm/jam)
A = Luas daerah aliran sungai (m2)
C = Koefisien aliran.

2.4

Koefisien Aliran (C)


Koefisien aliran permukaan (runoff) yang biasa dilambangkan dengan C
didefinisikan sebagai nisbah antara laju puncak aliran permukaan terhadap
intensitas hujan. Faktor utama yang mempengaruhi nilai C adalah laju
infiltrasi tanah, tanaman penutup tanah dan intensitas hujan. Adapun jika
8

suatu Daerah Aliran Sungai (DAS) terdiri dari berbagai macam pengunaan
lahan koefisien aliran permukaan yang berbeda, maka dapat dirumuskan
sebagai berikut:
Cdas = ( C1 A1+ C2 A2 + C3 A3+ Cn An ) / A1 + A2 + A3 + An...............................................(2.4)
Dimana:
C1... Cn = koefisien aliran permukaan (ke-1 sampai dengan n)
A
= luas lahan
Nilai Koefisien Aliran untuk Berbagai Penggunaan Lahan dapat dilihat pada Tabel
2.1
Tabel 2.1 Nilai Koefisien Aliran Untuk Berbagai Penggunaan Lahan

T
ata
guna
lahan

P
il
ai
c
(
%
)

en
gg
un
aa
n
La
ha
n

K
ebun
camp
uran

4
0

3,9
56
4

P
erkeb
unan

,74
9

,92
28

99,
86
23

1
,0996
0
,09228

S
awah

,79128

P
emuki
man

T
aman,
perku
buran

K
oefisie
n
daerah
aliran
sungai

1
49,931
15

1
5

58,
9

2
3,8410

94
03
S

45
5

emak

2,5
60
1
T

anah
terbuk
a

1
5

1,8
07

3,0
51
8

2,8
33
3

T
egalan

2
,95175

H
utan

3
,67920
7

8
,61036

4
6,4166
5

(Sumber: Badan Pertanahan Nasional; Perhitungan Sendiri)

Berdasarkan Tabel 2.1 Nilai Cdas untuk Desa Tanjung Jaya adalah sebagai berikut:
Cdas =
C 1 A 1+C 2 A 2+ C 3 A 3+C 4 A 4+C 5 A 5+C 6 A 6+C 7 A 7+C 8 A 8+ C 9 A 9
A 1+ A 2+ A 3+ A 4+ A 5+ A 6+ A 7+ A 8+ A 9
Cdas= 0.2 (43.9564) + 0.4 (2.749) + 0.1 (0.9228) + 0.5 (299.8623) +
0.15 (158.9403) + 0.07 (52.5601) + 0.25 (11.807) + 0.2 (43.0518) +
0.5 (92.8333)
43.9564 + 2.749 + 0.9228 + 299.8623 + 158.9403 + 52.5601 + 11.807
+ 43.0518 + 92.8333

Cdas = 8.79128 + 1.0996 + 0.09228 + 149.93115 + 23.841045 +


3.679207 + 2.95175 + 8.61036 + 46.41665
706.683

Cdas =

245.413322
706.683

Cdas = 0.347
10

Cdas = 0.35

2.5

Jaringan Syaraf Tiruan (Artificial Neural Network)


Jaringan Syaraf Tiruan adalah sistem pemroses informasi dengan
karakteristik dan performa yang mendekati syaraf biologis. Jaringan Syaraf
Tiruan adalah generalisasi dari pemodelan syaraf biologi dengan asumsiasumsi antara lain:
a. Pemrosesan informasi terletak pada sejumlah komponen yang
dinamakan neuron
b. Sinyal merambat antara satu neuron ke neuron-neuron lainnya
melalui jalur penghubung
c. Tiap jalur penghubung memiliki bobot dan mengalikan besar nilai
sinyal yang masuk (jenis neuron tertentu)
d. Tiap neuron menerapkan fungsi aktivasi (biasanya nonlininear) yang
menjumlahkan semua masukkan untuk menentukan sinyal
keluarannya
Selain memproses, jaringan syaraf tiruan juga memiliki kemampuan
menyimpan informasi seperti definisi oleh (Widodo, 2013) bahwa jaringan
syaraf adalah pemroses sederhana yang berjumlah banyak dan bekerja
secara paralel dan terdistribusi. Jaringan ini memiliki kemampuan
menyimpan pengetahuan dan memberikan saat dibutuhkan yang terdiri
11

dari pengetahuan yang dimiliki sebagai hasil proses pembelajaran dan


koneksi antar neuron yang berfungsi menyimpan pengetahuan itu. Oleh
karena itu jaringan syaraf tiruan bermaksud membuat sistem yang
menyerupai syaraf tiruan biologis.
Sedangkan menurut Trisnawan (2013) DARPA Neural Network Study
(1988, AFCEA International Press) jaringan syaraf tiruan adalah sebuah
jaringan syaraf yang dibentuk dari sejumlah elemen pemroses sederhana
yang bekerja secara paralel dimana fungsinya ditentukan oleh stuktur
jaringan, kekuatan hubungan, dan pegolahan dilakukan pada komputasi
elemen atau nodes.
Jaringan syaraf tiruan memiliki kegunaan antara lain untuk perkiraan
Fungsi, atau Analisis Regresi, termasuk prediksi time series dan modeling,
klasifikasi, termasuk pengenalan pola dan pengenalan urutan, serta
pengambil keputusan dalam pengurutan, pengolahan data, termasuk
penyaringan, pengelompokan, dan kompresi, dan program dari robot yang
bergerak secara mandiri tanpa di gerakan oleh manusia.
Pemrosesan informasi pada jaringan syaraf tiruan ini terjadi pada
elemen sederhana (neuron), kemudian sinyal dikirimkan diantara neuronneuron melalui penghubung (dendrit dan akson) tetapi penghubung antar
elemen memiliki bobot yang akan menambah atau mengurangi sinyal,
selanjutnya untuk menentukan output, setiap neuron memiliki fungsi
aktivasi (biasanya non linier) yang dikenakan pada semua input dan besar
output akan dibandingkan dengan threshold.
12

Suatu model Jaringan Syaraf Tiruan (Irawan, 2012) ditentukan oleh:


a.

Pola antar neuron (arsitektur jaringan)


b. Metode untuk menentukan dan mengubah bobot (disebut metode
learning)

c.

Fungsi aktivasi
d. Jaringan Syaraf Tiruan disebut juga: brain metaphor, computational
neuronscience, parallel distributed processing.

Input Layer

Hidden Layer

X1

Z1
X2

13

Output Layer

Y1

Z2
X3

1
1

Gambar 2.1 Struktur Jaringan Syaraf Tiruan


(Novikaginanto, 2012)

Berdasarkan Gambar 2.1 adalah backpropagation dengan 3 (tiga)


layer, yakni input layer, hidden layer, dan output layer. Input layer terdiri
dari x1, x2,x3 yang merupakan data yang diinputkan, angka 1 (satu)
merupakan bias pada input layer. Pada hidden layer terdapat z1,z2 yang
merupakan penghubung antara sinyal input ke sinyal output. Angka 1
(satu) merupakan bias pada hidden layer. Pada output layer terdapat y1
yang merupakan output dari backpropagation itu sendiri.

2.5.1 Arsitektur Jaringan


Jaringan Syaraf Tiruan memiliku beberapa arsitektur jaringan yang
sering digunakan dalam berbagai aplikasi, antara lain: (Kusumadewi,
2004)
a. Jaringan layar tunggal
Jaringan dengan lapisan tunggal terdiri dari 1 (satu) layer input
dan 1 (satu) layer output. Setiap neuron yang terdapat di layer
input selalu terhubung dengan setiap neuron yang terdapat pada
layer output. Jaringan ini hanya menerima input kemudian secara
14

langsung mengolahnya menjadi output tanpa harus melalui lapisan


tersembunyi. Contoh algoritma yang menggunakan metode ini
yaitu: ADALINE, Hopfield, Perceptron.
b. Jaringan layar jamak
Jaringan dengan layar jamak memiliki ciri khas tertentu yakni
memiliki 3 (tiga) jenis layer yaitu layer input, layer output dan
layer tersembunyi. Jaringan dengan banyak layer ini dapat
menyelesaikan permasalahan yang lebih kompleks dibanding
dengan lapisan tunggal. Namun, proses pelatihan sering
membutuhkan waktu yang cenderung lama. Contoh algoritma yang
menggunakan metode ini yaitu: MADALINE, Backpropagation,
Necognitron.
c. Jaringan layar kompetitif
Pada jaringan ini, sekumpulan neuron bersaing untuk mendapatkan
hak menjadi aktif. Contoh algoritma yang menggunakan metode ini
adalah Learning Vector Quantization (LVQ).

2.5.2

Metode Pembelajaran
Cara berlangsungnya pembelajaran atau pelatihan jaringan syaraf
tiruan dikelompokkan menjadi 3 (tiga) yaitu: (Jek Siang, 2005)

a. Supervised learning (pembelajaran terawasi)


Pada metode ini, setiap pola yang diberikan kedalam jaringan
syaraf tiruan telah diketahui outputnya. Selisih antara pola output
yang dihasilkan dengan pola output yang dikehendaki yang disebut
target error. Target error digunakan untuk mengoreksi bobot
jaringan syaraf tiruan sehingga jaringan syaraf tiruan mampu
menghasilkan output yang sedekat mungkin dengan pola yang telah
15

diketahui oleh jaringan syaraf tiruan. Contoh algoritma jaringan


syaraf tiruan yang menggunakan metode ini yakni : Hebbian,
Perceptron, ADALINE, Boltzman, Holpfield, Backpropagation,
LVQ.
b. Unsupervised learning (pembelajaran tak terawasi)
Pada metode ini, tidak memerlukan target output. Pada metode ini
juga tidak dapat ditentukan hasil seperti apakah yang diharapkan
selama proses pembelajaran. Selama proses pembelajaran, nilai
bobot disusun dalam suatu range tertentu tergantung pada nilai input
yang diberikan. Tujuan pembelajaran ini adalah menglompokkan
unit-unit yang hampir sama dalam area tertentu. Contoh algoritma
jaringan syaraf tiruan yang menggunakan metode ini yakni :
Kohonen
c. Hybrid learning (pembelajaran hibrida)
Merupakan kombinasi dari metode pembelajaran supervised
learning dan unsupervised learning. Sebagian dari bobotnya
ditentukan melalui pembelajaran terawasi dan sebagian lainnya
melalui pembelajaran tak terawasi. Contoh algoritma jaringan syaraf
tiruan yang menggunakan metode ini adalah RBF.
2.5.3

Fungsi Aktivasi
Dalam jaringan syaraf tiruan, fungsi aktivasi digunakan untuk
menentukan keluaran suatu neuron. Argumen fungsi aktivasi adalah net
masukan (kombinasi linier masukan dan bobotnya) (Jek Siang, 2005)
Jika net =

x i wi

........................................................(2.5)

maka fungsi aktivasinya adalah


16

f(net) = f

( x i wi )

.....................................................(2.6)

Beberapa fungsi aktivasi yang sering digunakan adalah sebagai


berikut :
a. Fungsi threshold (batas ambang)

f ( x)= 1 , jika x ......................................................................(2.7)


0 , jika x <
Fungsi threshold merupakan fungsi threshold biner. Untuk kasus
bilangan bipolar, maka angka 0 diganti dengan angka -1. Sehingga
persamaan diubah menjadi
f ( x)=

1, jika x
{1,
jika x <

....................................................................(2.8)

Adakalanya dalam jaringan syaraf tiruan ditambahkan suatu unit


masukan yang nilainya selalu 1. Unit tersebut dikenal dengan bias.
Bias dapat dipandang sebagai sebuah input yang nilainya selalu 1.
Bias berfungsi untuk mengubah threshold menjadi 0.
b. Fungsi sigmoid
f (x)=

1
...................................................................(2.9)
1+ex

Fungsi ini sering digunakan karena nilai fungsinya yang sangat


mudah untuk dideferensiasikan.
f ' (x)=f ( x )(1f ( x ) ) .....................................................(2.10)

c. Fungsi identitas
f (x)=x ...........................................................................(2.11)

17

Digunakan jika keluaran yang dihasilkan oleh jaringan syaraf


tiruan merupakan sembarang bilangan riil (bukan hanya pada range
[0,1] atau [-1,1]).
2.5.4 Algoritma Backpropagation
Algoritma Backpropagation meliputi 3 (tiga) fase. Fase pertama
adalah fase maju. Pola masukkan dihitung maju mulai dari layar
masukan hingga layar keluaran menggunakan fungsi aktivasi yang
ditentukan. Fase kedua adalah fase mundur. Selisih antara keluaran
jaringan dengan target yang diinginkan merupakan kesalahan yang
terjadi. Kesalahan tersebut dipropagasikan mundur, dimulai dari garis
yang berhubunganlangsung dengan unit-unit di layar keluaran. Fase
ketiga adalah modifikasi bobot untuk menurunkan kesalahan yang
terjadi.
a. Fase I : Propagasi maju
Selama propagasi maju, sinyal masukan (xi) dipropagasikan
ke layar tersembunyi menggunakan fungsi aktivasi yang
ditentukan. Keluaran dari setiap unit tersembunyi (zj) tersebut
selanjutnya dipropagasikan maju lagi ke layar tersembunyi di
atasnya menggunakan fungsi aktivasi yang ditentukan.
Demikian seterusnya hingga menghasilkan keluaran jaringan
(yk).
Berikutnya, keluaran jaringan (yk) dibandingkan dengan
target yang harus dicapai (tk). Selisih antara tk yk adalah
kesalahan yang terjadi. Jika kesalahan ini lebih kecil dari batas
toleransi yang ditentuka, maka iterasi dihentikan. Akan tetapi
18

apabila kesalahan masih lebih besar dari batas toleransinya,


maka bobot setiap garis dalam jaringan akan dimodifikasi untuk
mengurangi kesalahan yang terjadi.
b. Fase II : Propagasi mundur
Berdasarkan kesalahan tk yk, dihitung faktor k (k = 1,2, ...
, m) yang dipakai untuk mendistribusikan kesalahan di unit yk ke
semua unit tersembunyi yang terhubung langsung dengan yk. k
juga dipakai untuk mengubah bobot garis yang berhubungan
langsung dengan unit keluaran.
Dengan cara yang sama, dihitung faktor j di setiap unit di
layar tersembunyi sebagai dasar perubahan bobot semua garis
yang berasal dari unit tersembunyi di layar di bawahnya.
Demikian seterusnya hingga semua faktor di unit tersembunyi
yang berhubungan langsung dengan unit masukan dihitung.
c. Fase III : Perubahan bobot
Setelah semua faktor dihitung, bobot semua garis
dimodifikasi bersamaan.perubahan bobot suatu garis didasarkan
atas faktor neuron di layar atasnya. Sebagai contoh, perubahan
bobot garis yang menuju ke layar keluaran didasarkan atas k
yang ada di unit keluaran.
Ketiga fase tersebut diulang-ulang terus hingga kondisi
penghentian dipenuhi. Umumnya kondisi penghentian yang
sering dipakai adalah jumlah iterasi atau kesalahan. Iterasi akan
dihentikan jika jumlah iterasi yang dilakukan sudah melebihi
jumlah maksimum iterasi yang ditetapkan, atau jika kesalahan
yang terjadi sudah lebih kecil dari batas toleransi yang diijinkan.

19

Berikut adalah penjelasan Algoritma Backpropagation (Fauset,


1993:294; (Widodo, 2013)):
Langkah 0. Inisialisasi bobot dari Xi ke Zj dan dari Zj ke Yk dengan nilai acak
serendah mungkin, set harga error minimal .
Langkah 1. Selama kondisi stop belum dilalui maka lakukan langkah 2-8.
Langkah 2. Untuk setiap pasang data masukan lakukan langkah 3-8.
Umpan maju (feedforward).
Langkah 3. Setiap unit sel masukan (Xi, i=1,...,n) menerima sinyal xi dan
menyebarkan sinyal ke seluruh lapis tersembunyi (hidden layer).
Langkah 4.Setiap unit sel tersembunyi (Zj, j=1,...,p) menjumlahkan setiap
sinyal masukan yang telah diberi bobot (vij) dan bias (voj),
n

z _ in j v oj xi vij
i 1

, ..................................................... (2.12)

sinyal keluaran dihitung dengan fungsi aktivasi,


z j f ( z _ in j )

, .................................................................(2.13)

dan mengirimkan hasilnya ke setiap unit sel di lapisan diatasnya (unit-unit


keluaran).
Langkah 5.Setiap unit sel keluaran (Yk, k=1,...,m) menjumlahkan setiap sinyal
yang telah diberi bobot (wjk) dan bias (wok),
m

y _ in k wok z j w jk
j 1

, .....................................................(2.14)

dengan fungsi aktivasi sinyal keluaran dihitung dengan,


y k f ( y _ in k ) , ...................................................................(2.15)
Perambatan balik nilai kesalahan (backpropagation of error).
Langkah 6. Setiap unit sel keluaran (Yk, k=1,...,m) menerima pola target (tk)
yang sesuai dengan pola masukan pelatihan, hitung faktor ,
20

k (t k y k ) f ' ( y _ in k ) , ...................................................(2.16)
hitung koreksi bobot dengan,
w jk kz j

, .................................................................. ..(2.17)

hitung koreksi bias dengan,


w0 k k , ........................................................................(2.18)
selanjutnya nilai k digunakan di lapisan dibawah.
Langkah 7. Setiap unit sel tersembunyi (Zj, j=1,...,k) menjumlahkan nilai
yang telah diberi bobot dari lapisan diatasnya,
m

_ in j k w jk

, ...............................................................(2.19)

k 1

Selanjutnya hitung nilai j dengan,

j _ in j f ' ( z _ in j )

, ........................................................(2.20)

hitung koreksi bobot dengan,


wij jxi

, ........................................................................(2.21)

hitung koreksi bias dengan,


v0 j

....................................................................(2.22)

Menghitung bobot baru.


Langkah 8. Setiap unit sel keluaran (Yk, k=1,...,m) memperbaharui bobot bias
dan lapisan dengan,
w jk (baru ) w jk (lama ) w jk

. ............................................(2.23)

Setiap unit sel tersembunyi (Zj, j=1,...,p) memperbaharui bobot bias dan
lapisan dengan,
vij (baru ) vij (lama ) vij

..................................................(2.24)

Langkah 9. Test kondisi stop. Kondisi stop yang digunakan adalah nilai Mean
Squre Error < toleransi, maksimum iterasi 1500, nilai toleransi 0,001.
Dimana:
x

= masukkan (input)

= 1 s/d n (n = 10)
21

vij

= bobot pada lapisan tersembunyi

wij = bobot pada lapisan keluaran


n

= jumlah unit pengolah pada lapisan tersembunyi

= bias pada lapisan tersembunyi dan lapisan keluaran

= jumlah unit pengolah pada lapisan keluaran

= output

k = error pada lapisan keluaran


j

= error pada lapisan tersembunyi

voj = bias pada lapisan tersembunyi


woj = bias pada lapisan tersembunyi dan lapisan keluaran
Setelah proses pelatihan, backpropagation dapat digunakan untuk proses
pengujian jaringan. Pada proses pengujian, tahap yang dilakukan hanya sampai
tahap maju saja, tidak ada tahap mundur apalagi tahap modifikasi bobot.
Seluruh bobot input diambil dari nilai bobot terakhir yang diperoleh dari proses
pelatihan. Pada tahap pengujian ini, jaringan diharapkan dapat mengenali pola
berdasarkan data baru yang diberikan (generalisasi).
Menurut Jaya (2007) terdapat beberapa metode pelatihan dan pengujian
Jaringan Syaraf Tiruan dengan backpropagation. Hasil perbandingan beberapa
metode yang terdapat pada pelatihan dan pengujian backpropagation dapat
dilihat pada Tabel berikut:
Tabel 2.2 Perbandingan Hasil Pelatihan beberapa metode pelatihan
JST dengan menggunakan data pelatihan yang sama. (Jaya, 2007)

N
ama/p
enem
u
metod
e
pelati
han
JST
Backp
ropag

N
ama
Met
ode
Pela
tiha
n
yan
g
ters
edia
22

J
u
m
l
a
h
I
t
e
r

S
E
<
0
.
0
0
1

ation
(
kusu
made
wi,
2004)

pad
a
Tool
box
Mat
lab

a
s
i
,
M
a
x
1
5
0
0

S
caled
Conju
gate
Gradie
nt

T
rai
nsc
g

,
6
3
2
x
1
0
0
4

F
lechter
Reeve
s
Updat
e

T
rai
ncg
f

03

,
4
2
1
x
1
0
0
4

P
olakRibie
re

T
rai
ncg
p

,
2
2
4
x
1
0
0

23

P
4

owelBeale
Restar
s

T
rai
ncg
b

4
7

,
3
1
5
x
1
0
0
4

G
radien
t
Desce
nt
(GD)
with
Adapti
ve
Learni
ng
Rate

T
rai
ng
da

1
1
6
7

,
9
8
3
x
1
0
0
4

G
D with
Mome
ntum
and
Adapti
ve
Learni
ng
Rate

T
rai
ng
dx

1
1
7

,
7
3
1
x
1
0
0
4

R
7

esilent
Backp
ropaga
tion

T
rai
nrp

2
1
0

,
8
2
3
x
1

24

0
0
4

L
evenb
ergMawr
quardt

T
rai
nl
m

,
7
1
x
1
0
0
5

B
royde
n,
Fletch
er,
Goldf
arb,
Shann
o

T
rai
nbf
g

,
2
9
9
x
1
0
0
4

O
ne
Step
Secant

T
rai
nos
s

,
1
5
5
x
1
0
0
4

Berdasarkan Tabel diatas, terlihat bahwa metode pelatihan LevenbergMarquardt memberikan nilai Mean Square Error (MSE) terkecil yaitu sebesar
9,71 x 10-05 yang dihasilkan hanya dalam 11 kali hitungan iterasi. Ini berarti

25

bahwa metode ini dapat mencapai fungsi tujuannya lebih cepat dibandingkan
dengan metode lainnya.
2.5.5 Algoritma Levenberg-Marquardt
Algoritma Levenberg-Marquardt merupakan pengembangan dari
algoritma error backpropagation. Algoritma ini dibangun untuk mengatasi
beberapa kekurangan yang ada pada algoritma error backpropagation
dengan memanfaatkan teknik optimasi numerik standar yaitu menggunakan
pendekatan matriks Jacobian.
Tujuan dari Levenberg-Marquardt adalah meminimalkan total error.
Berikut beberapa struktur algoritma Levenberg-Marquardt:
1. Inisislisasi bobot dan bias dengan bilangan acak, epoch maksimum,
minimal goal (performance yang dihitung dengan MSE)
2. Menentukan parameter yang dibutuhkan, antara lain:
a. Parameter Levenberg-Marquardt yang nilainya harus lebih besar
dari nol
b. Parameter faktor input dan bias yang digunakan sebagai
parameter yang dikalikan atau dibagi dengan parameter
levenberg-Marquardt
3. Menghitung maju (feedforward) pada hidden dan otuput layer seperti
langkah-langkah pada algortima error backpropagation. Pada langkah
(1)-(4).
4. Menghitung nilai Mean Square Error (MSE)
5. Menghitung error dan total error jaringan
a. Rumus untuk error :
26

er = tr - yr......................................................................................................................... ...........(2.25)
r merupakan input ke-r
b. Rumus untuk menghitung total error :
e = [e1 e2 e3 ... eN]T................................................................................ .........................(2.26)
e merupakan vektor kesalahan berukuran Nx1 yang terdiri dari e r
r = 1,2,3...N
6.

Menghitung matriks Jacobian J(x)


x merupakan matriks yang berisi nilai bobot dan bias dari keseluruhan
jaringan.
X = [v11 , v12 , . . . , vij ; v01 , v02 , . . . ; w11, w12 , . . . wjk ; w01 , w02 . . .
w0k]
Matriks Jacobian berisi turunan pertama error jaringan terhadap bobot
dan bias jaringan. Rumus untuk mencari Jacobian Matriks antara lain.
J= [

er
] .................................................................................(2.27)
w

7. Setelah didapatkan nilai J(x) maka dapat dihitung perubahan koreksi


bobot dan biasnya dengan rumus berikut:
x = [ J (x)T J(x) + I ]-1 * Gradient
Gradient :
J(x)T e ...........................................................................................(2.28)
8. Setelah didapatkan nilai x tahap selanjutnya adalah pengkoreksian
bobot dengan rumus yang sama seperti pada algortima error
backpropagation. Pada langkah 12
9. Menghitung maju (feedforward) dengan bobot dan bias yang baru. pada
langkah (1-4)
27

10. Menghitung MSE jaringan dengan bobot dan bias yang baru. Kemudian
tes kondisi berhenti
11. Jika epoch atau iterasi masih berlanjut maka akan terdapat 2
kemungkinan:
a. MSE naik
b. MSE turun
12 Kemudian lakukan kembali langkah 5 sampai dengan 8. (Amaliah,
2011)
Dimana:
er = error ke- r
tr = target ke-r
yr = output ke-r
r = input ke-r
J(x) = matriks Jacobian
2.6

Metode Pengembangan Sistem


Model sekuensial linier merupakan salah satu dari metode yang digunakan
untuk pengembangan sistem. Sekuensial linier sering disebut juga dengan
siklus kehidupan klasik atau model air terjun. Model sekuensial linier
mengusulkan sebuah pendekatan kepada perkembangan perangkat lunak
sistematik dan sekuensial yang mulai pada tingkat dan kemajuan sistem
pada seluruh analisis, desain, kode, pengujian dan pemeliharaan (Pressman,
2002). Gambar 2.2 menggambarkan model pengembangan sistem sikuensial
linier.

System/Information
Engineering
Analysi

Desig

Code
28

Test

Gambar 2.2 Model sekuensial linier (Pressman, 2002)

Model sekuensial linier melingkupi aktivitas-aktivitas sebagai berikut:


(Pressman, 2002)
1.

Rekayasa dan pemodelan sistem


Karena sistem merupakan bagian dari sebuah sistem yang lebih
besar, kerja dimulai dengan membangun syarat dari semua elemen
sistem dan mengalokasikan beberapa subset dari kebutuhan ke software
tersebut. Pandangan sistem ini penting ketika software harus
berhubungan dengan elemen-elemen yang lain seperti software,
manusia, dan database. Rekayasa dan anasisis system menyangkut
pengumpulan kebutuhan pada tingkat sistem dengan sejumlah kecil
analisis serta disain tingkat puncak. Rekayasa informasi mancakup juga
pengumpulan kebutuhan pada tingkat bisnis strategis dan tingkat area
bisnis.

2.

Analisis kebutuhan software


Proses pengumpulan kebutuhan diintensifkan dan difokuskan,
khusunya pada software. Untuk memahami sifat program yang
dibangun, analis harus memahami domain informasi, tingkah laku,
unjuk kerja, dan interface yang diperlukan. Kebutuhan baik untuk
sistem maupun software didokumentasikan dan dilihat lagi dengan

3.

pelanggan.
Desain
Desain software sebenarnya adalah proses multi langkah yang
berfokus pada empat atribut sebuah program yang berbeda, struktur
29

data, arsitektur software, representasi interface, dan detail (algoritma)


prosedural. Proses desain menterjemahkan syarat/kebutuhan ke dalam
sebuah representasi software yang dapat diperkirakan demi kualitas
sebelum dimulai pemunculan kode. Sebagaimana persyaratan, desain
didokumentasikan dan menjadi bagian dari konfigurasi software .
4.

Generasi kode
Desain harus diterjemahkan kedalam bentuk mesin yang bisa
dibaca. Langkah pembuatan kode melakukan tugas ini. Jika desain
dilakukan dengan cara yang lengkap, pembuatan kode dapat
diselesaikan secara mekanis. Implementasi program dalam Tugas Akhir
ini penulis mengimplementasikan desain ke dalam bentuk bahasa
pemrograman. Bahasa pemrograman yang digunakan adalah bahasa
pemrograman Matlab R2008b.

5.

Pengujian
Sekali program dibuat, pengujian program dimulai. Proses
pengujian berfokus pada logika internal software, memastikan bahwa
semua pernyataan sudah diuji, dan pada eksternal fungsional, yaitu
mengarahkan pengujian untuk menemukan kesalahankesalahan dan
memastikan bahwa input yang dibatasi akan memberikan hasil aktual
yang sesuai dengan hasil yang dibutuhkan.

6.

Pemeliharaan
Software akan mengalami perubahan setelah disampaikan kepada
pelanggan (perkecualian yang mungkin adalah software yang
dilekatkan). Perubahan akan terjadi karena kesalahankesalahan

30

ditentukan, karena software harus disesuaikan untuk mengakomodasi


perubahanperubahan di dalam lingkungan eksternalnya (contohnya
perubahan yang dibutuhkan sebagai akibat dari perangkat peripheral
atau sistem operasi yang baru), atau karena pelanggan membutuhkan
perkembangan fungsional atau unjuk kerja. Pemeliharaan software
mengaplikasikan lagi setiap fase program sebelumnya dan tidak
membuat yang baru lagi.

2.7

Data Flow Diagram (DFD)


Data Flow Diagram (DFD) adalah alat pembuatan model yang
memungkinkan profesional sistem untuk menggambarkan sistem sebagai
suatu jaringan proses fungsional yang dihubungkan satu sama lain dengan
alur data, baik secara manual maupun komputerisasi. DFD ini sering disebut
juga dengan nama Bubble chart, Bubble diagram, model proses, diagram
alur kerja, atau model fungsi (Wijayaning, 2009).
Symbol yang digunakan pada DFD diperoleh dari dua sumber, yaitu
DeMarco & Yourdan Symbols dan Gane & Sarson Symbols. Simbol dari
kedua sumber tersebut sama-sama dapat digunakan, hanya saja harus
konsisten dalam penggunaannya. Adapun simbol-simbol yang disebutkan
tersebut ditunjukkan pada Tabel 2.3 sebagai berikut:
Tabel 2.3 SimbolSimbol DFD (Wijayaning, 2009)

31

DeMarco& Yourdan
Simbol

Gane & Sarson


Simbol

Keterangan

Entitas Luar
(Terminator)
Proses

Data flow (arus data)


Data store (simpan data)

Dalam DFD terdapat proses pengubahan input menjadi output. Untuk


mempermudah pembacaan DFD dibuat bertingkat/level dari mulai level 0 sampai
dengan level yang diperlukan antara lain (Wijayaning, 2009).
1. Diagram Konteks (Diagram Level Nol)
Diagram konteks merupakan level tertinggi dari DFD, yang
memperlihatkan sistem sebagai sebuah proses dan mengGambarkan
hubungan sistem dengan lingkungan luarnya. Tujuannya adalah
memberikan pandangan umum mengenai sistem.
2. Diagram Level Satu
Diagram level satu adalah turunan langsung dari diagram konteks
yang menjelaskan proses secara lebih terperinci.
3. Diagram level Dua, Tiga, dan seterusnya.
Diagram ini merupakan dekomposisi dari level sebelumnya. Proses
dekomposisi dilakukan sampai dengan proses siap dituangkan ke dalam
program.

32

2.8

Diagram Alir (Flowchart)


Menurut Jogiyanto (2005) Diagram alir (flowchart) adalah suatu bagan
(chart) yang menunjukkan aliran (flow) dalam program atau prosedur sistem
secara logika. Jadi, pembuatan flowchart ini digunakan untuk
menggambarkan sistem baru yang akan dikembangkan secara logis tanpa
mempertimbangkan terlebih dahulu lingkungan fisik dimana sistem ini akan
digunakan.
Ada beberapa hal yang perlu diperhatikan pada waktu menggambar atau
membuat flowchart, yaitu :
1. Bagan alir sebaiknya digambar dari atas ke bawah dan mulai dari bagian
kiri dari suatu halaman.
2. Kegiatan dalam bagan alir harus ditunjukkan dengan jelas.
3. Harus ditunjukkan dari mana kegiatan akan dimulai dan dimana akan
berakhir.
4. Masing-masing kegiatan di dalam bagan alir harus di dalam urutan yang
semestinya.
5. Kegiatan yang terpotong akan disambung di tempat lain harus
ditunjukkan dengan jelas menggunakan simbol penghubung.
6. Gunakan simbol-simbol bagan alir yang standar.
Symbol-simbol yang digunakan pada flowchart akan ditunjukkan pada Tabel
2.4

33

Tabel 2.4

Simbol-Simbol Flowchart (Syarif, 2009)

Fungsi

imbol
Off page
connector, merupakan
simbol masuk atau
keluarnya suatu prosedur
pada lembar kertas lain
Arus atau
flow, prosedur yang dapat
dilakukan dari atas ke
bawah, bawah ke atas, dari
ke kanan atau dari kanankanan ke kiri
Document
merupakan simbol untuk
data yang berbentuk
informasi
Predefied
process, untuk menyatakan
sekumpulan langkah proses
yang ditulis sebagai
34

prosedur
Simbol
untuk output yang
ditujukan suatu divice,
seperti printer, plotter
Untuk
menyimpan data

Predifined
process, suatu simbol untuk
menyediakan tempattempat untuk pengolahan
data dalam storage
Connector,
suatu prosedur akan masuk
atau keluar melalui simbol
ini dalam lembar yang
sama
Terminal,u
ntuk memulai dan
mengakhiri suatu program
Proses,
suatu simbol yang
menunjukan setiap
pengolahan yang dilakukan
oleh komputer

Inputoutput, untuk memasukan


data maupun menunjukan
hasil dari suatu proses.

Decision,
Suatu kondisi yang akan
menghasilkan beberapa
kemungkinan jawaban atau
pilihan

35

2.9

Perancangan Database

2.9.1 Relasi Antar Entitas (Entity Relational)


Model Entity-Relationship digunakan untuk menyajikan objek data
secara visual dalam bentuk diagram (Pratiwi, 2011). Berikut ini
merupakan dasar-dasar membangun pemodelan E-R.
1. Entitas
Entitas adalah objek data prinsip tentang informasi yang
dikumpulkan. Entitas digolongkan menjadi independent atau
dependent (dalam beberapa metodologi, istilah yang digunakan
adalah lemah dan kuat secara berturut-turut). Suatu independet
entity adalah apa yang tidak bersandar pada yang lain sebagai
identifikasi.
2. Atribut
Atribut menguraikan entitas di mana mereka dihubungkan.
Kejadian dari suatu atribut tertentu adalah suatu nilai. Atribut bisa
digolongkan sebagai identifiers atau descriptors. Identifiers lebih
umum disebut kunci, yang secara unik mengidentifikasikan suatu
kejadian dari suatu entitas. Desciptor menguraikan suatu
karakteristik yang tidak unik dari suatu kejadian entitas.
3. Relasi
Hubungan disesuaikan dengan derajat, konektivitas, kardinalitas,
arah, jenis, dan keberadaan. Tidak semua metodologi pemodelan
menggunakan kriteria tersebut.
Derajat relasi adalah sejumlah entitas yang berhubungan dengan
hubungan. Hubungan n-ary adalah format yang umum untuk
derajat n.
36

Relasi dalam basisdata relasional mempunyai beberapa


karakteristik, yaitu:
a. Semua elemen data pada suatu baris dan kolom tertentu
harus mempunyai nilai tunggal (single value), atau suatu
nilai yang tidak dapat dibagi-bagi (atomic value), bukan
suatu larik atau grup perulangan.
b. Semua entry/elemen data pada suatu kolom tertentu dalam
relasi yang sama harus mempunyai jenis yang sama.
Masing-masing kolom dalam suatu relasi mempunyai
suatu nama yang unik (meskipun kolom-kolom dalam
relasi yang berbeda diizinkan mempunyai nama yang
baik).
4. Kardinalitas
Kardinalitas relasi dapat ditunjukkan dengan banyaknya garis
cabang atau dengan pemakaian angka, yaitu: (Pratiwi, 2011)
a.
b.
c.
d.

Relasi satu ke satu (1 dan 1)


Relasi satu ke banyak (1 dan m)
Relasi banyak ke satu (m dan 1)
Relasi banyak ke banyak (m dan m)

2.10 MySQL
MySQL adalah salah satu jenis database server yang sangat terkenal.
Kepopulerannya disebabkan MySQL menggunakan SQL sebagai bahasa
dasar untuk mengakses databasenya. MySQL termasuk jenis RDBMS
(Relationa Database Management System). Pada MySQL, sebuah database
mengandung satu atau sejumlah Tabel. Tabel terdiri atas sejumlah baris dan
setiap baris mengandung satu atau beberapa kolom. Untuk mengelola
database MySQL ada beberapa cara yaitu melalui prompt DOS (tool
37

command line) dan dapat juga menggunakan program utility seperti:


(Pratiwi, 2011)
1.
2.
3.
4.

PHP MyAdmin
MySQL GUI
MySQL Manager Java Based
MySQL Administrator for windows

38

BAB III
METODE PENELITIAN

3.1

Jenis Penelitian
Jenis penelitian yang digunakan dalam penelitian ini adalah penelitian
terapan. Penelitian terapan adalah penyelidikan yang hati-hati, sistematik
dan terus menerus terhadap suatu masalah dengan tujuan untuk digunakan
dengan segera untuk keperluan tertentu (Soemarno, 2007). Hasil dari
penelitian terapan tidak perlu satu penemuan baru, tapi merupakan aplikasi
baru dari penelitian yang telah ada. Penelitian ini berusaha menerapkan
teori atau metode yang telah dikembangkan baik dalam cakupan penelitian
murni maupun penelitian terapan seperti sistem basis data, bahasa
pemrograman, dan lain-lain.
Pada penelitian ini akan dibangun suatu sistem yang dapat
meramalkan besar kenaikan permukaan air dalam jangka pendek (satu jam
kedepan) di Desa Tanjung Jaya, Kelurahan Surabaya, Kecamatan Sungai
Serut, Kota Bengkulu. Dengan menggunakan metode Jaringan Syaraf
Tiruan (Artificial Neural Network) dengan model Perambatan-Balik
(Backpropagation) dengan metode Levenberg-Marquardt sebagai metode
pelatihan dan pengujian.

3.2

Tempat dan Waktu Penelitian


Penelitian ini dilakukan dengan cara dokumentasi dan kepustakaan.
Sumber data dari penelitian ini berupa hasil dokumentasi, seperti data
39

intensitas curah hujan diperoleh dari Badan Meteorologi, Klimatologi dan


Geofisika (BMKG) Provinsi Bengkulu selama 4 bulan (bulan November
2013 Februari 2014). Data luas Daerah Aliran Sungai (DAS) diambil
dari BPDAS Ketahun, dan data tata guna lahan yang diambil dari Badan
Pertanahan Nasional (BPN).

3.3

Sarana Pendukung
Sarana pendukung yang digunakan untuk melakukan penelitian ini,
adalah sebagai berikut:

1.
a.

Perangkat Keras (Hardware) yang digunakan adalah:


Laptop Acer dengan spesifikasi Processor Intel Pentium P6200, RAM 1

GB, Hard Disk 500 GB.


b.
Printer Cannon iP 2770
2.
Perangkat Lunak (Software) yang digunakan adalah:
a.
Sistem Operasi Windows Seven Ultimate
b.
Matrix Laboratory (MatLab) R2008b

3.4

Teknik Pengumpulan Data


Teknik pengumpulan data yang dilakukan pada penelitian ini
adalah dengan melakukan pengumpulan data hasil dokumentasi dan
kepustakaan. Dokumentasi yaitu mengumpulkan data-data berdasarkan
hasil penelitian atau perhitungan yang telah dilakukan sebelumnya.
Studi kepustakaan yaitu pengumpulan data yang diperoleh dari buku-buku,
karya ilmiah, pendapat para ahli yang memiliki relevansi dengan Sistem
Peramalan Kenaikan permukaan air Dengan Artificial Neural Network
Backpropagation (Studi Kasus : Desa Tanjung Jaya, Kelurahan Surabaya,

40

Kecamatan Sungai Serut, Kota Bengkulu). Studi kepustakaan yang


digunakan dalam penelitiaan ini berupa:
a. Buku
Buku yang digunakan dalam penelitian ini beupa buku-buku
referensi yang dapat menunjang materi mengenai jaringan syaraf tiruan
(artificial neural network), pemrograman Graphic User Interface (GUI)
dengan MatLab, sintaks-sintaks MatLab, dan buku elektronik yang didapat
di internet yang berhubungan dengan penelitian ini.
b. Artikel
Artikel yang digunakan sebagai sumber data adalah artikel yang
didapat dari internet yang berhubungan dengan penelitian ini.
c. Jurnal dan Skripsi
Bahan ilmiah lain yang digunakan sebagai acuan dalam penelitian
ini adalah Jurnal dan Skripsi di bidang yang relevan dengan penelitian ini,
yaitu mengenai sistem peramalan atau pembahasan mengenai metode
Backpropagation.

3.5

Metode Pengembangan Sistem


Sistem yang dikembangkan dalam penelitian ini menggunakan
model pengembangan sistem sekuensial linier yang bersifat sistematis dan
berurutan. Adapun penjelasan tahap-tahap model sekuensial linier dalam
penelitian ini adalah sebagai berikut:
1. Rekayasa dan Pemodelan sistem
Karena sistem merupakan bagian dari sebuah sistem yang lebih
besar, kerja dimulai dengan membangun syarat dari semua elemen sistem
dan mengalokasikan beberapa subset dari kebutuhan software tersebut.
Pandangan sistem ini penting ketika software harus berhubungan dengan
41

elemen-elemen yang lain seperti software, manusia, dan database.


Rekayasa dan analisis sistem menyangkut pengumpulan kebutuhan pada
tingkat sistem dengan sejumlah kecil analisis serta disain tingkat puncak.
Rekayasa informasi mencakup juga pengumpulan kebutuhan pada tingkat
bisnis strategis dan tingkat area bisnis.
2. Analisis kebutuhan sistem
Pada tahap ini peneliti akan melakukan analisis dan definisi
kebutuhan sistem dengan teknik pengumpulan data menggunakan
dokumentasi, serta mengumpulkan semua data yang bersumber dari
literatur berupa buku-buku, laporan penelitian, karangan-karangan ilmiah
dan lain sebagainya mengenai hal-hal yang dibutuhkan dan mendukung
proses pembuatan sistem peramalan kenaikan permukaan air ini. Setelah
itu, dilakukan analisis sistem yang akan dibangun. Hasil analisis ini akan
diGambarkan secara terstruktur yaitu dengan membuat DFD. Langkah
selanjutnya adalah membuat flowchart untuk menunjukkan aliran (flow)
dalam program atau prosedur sistem secara logika.
3. Desain Sistem
Desain software sebenarnya adalah proses multi langkah yang
berfokus pada empat atribut sebuah program yang berbeda, yaitu struktur
data, arsitektur software, representasi interface, dan detail (algoritma)
prosedural. Proses desain menterjemahkan syarat/kebutuhaan ke dalam
sebuah representasi software yang dapat diperkirakan demi kualitas
sebelum dimulai pemunculan kode. Sebagaimana persyaratan, desain
didokumentasikan dan menjadi bagian dari konfigurasi software.

42

4. Generasi Kode
Desain harus diterjemahkan kedalam bentuk yang dimengerti oleh
mesin yaitu ke dalam bahasa pemrograman yang telah ditentukan melalui
proses penulisan program (coding). Dalam penelitian ini, digunakan
MatLab R2008b
5. Pengujian Sistem
Sistem yang sudah dibangun akan dilakukan pengujian untuk
melihat apakah sistem tersebut sesuai dengan perencanaan dan
perancangan.
6. Pemeliharaan
Tahap ini adalah tahap akhir pengembangan dan implementasi
sistem yaitu pengoperasian sistem secara nyata. Namun dalam
pengoperasiannya tetap dibutuhkan dukungan agar sistem dapat digunakan
dalam jangka panjang dengan melakukan pemeliharaan sistem.
Pemeliharaan sistem dilakukan bukan hanya sekedar proses memperbaiki
kesalahan program tetapi proses yang memiliki karakteristik memperbaiki
kesalahan yang tidak ditemukan pada tahapan sebelumnya atau
menambahkan fungsi baru yang belum ada pada program tersebut.

3.6

Metode Pengujian
Pada penelitian ini, akan dilakukan 2 jenis pengujian. Pengujian
yang pertama dilakukan untuk menguji tingkat akurasi dari peramalan
secara keseluruhan. Kedua pengujian dilakukan untuk melihat berapa
selisih error antara hasil peramalan dengan data sesungguhnya dengan
43

menggunakan MAPE (Mean Absolute Percentange Error). Berikut adalah


rumus untuk menghitung MAPE dan rumus tingkat akuasi dapat ditulis
sebagai berikut:
Tingkat akurasi(%) =

MAPE(%) =

1
N

datauji benar
jumlah total datauji

x 100%.................(3.1)

PiA - PiF / PiA) x 100%..............................(3.2)

i=1

Dimana:
PA = data aktual
PF = data hasil peramalan
N = Jumlah data

3.7

Jadwal Penelitian
Berikut adalah jadwal penelitian yang akan dilaksanakan dapat dilihat
pada Tabel 3.1 di bawah ini:

Tabel 3.1. Jadwal Penelitian

K
o

Bulan/Tahun

egiatan
eb

ar

P
engajuan Judul
Proposal
P

enyusunan
Proposal
S

eminar
Proposal

erbaikkan

44

pr

ei

uni

uli

Proposal
P
.

engumpulan
Data

nalisis dan
Perancangan
Sistem

P
embuatan
Koding
I
.

mplementasi
dan Pengujian
Unit
I

ntegrasi dan
Pengujian

0.

nalisis Hasil

1.

idang Hasil

2.

evisi Skripsi

3.

inal Buku
Skripsi

A
S
R
F

45

BAB IV
ANALISIS DAN PERANCANGAN SISTEM

Dalam bab ini akan dijelaskan analisis dan desain dari sistem yang akan
dibangun. Hal ini dimaksudkan untuk memberikan gambaran yang jelas tentang
alur kerja sistem dan desain sistem.
4.1 Analisis Sistem
Analisis sistem dimaksudkan untuk memberikan gambaran yang jelas
tentang program aplikasi. Program aplikasi yang akan dibangun adalah
sebuah sistem yang dapat meramalkan besar kenaikan permukaan air
kedepannya berdasarkan data koefisien aliran, intensitas curah hujan, dan
luas daerah aliran sungai sebelumnya. Sistem yang akan dibangun
menggunakan metode artificial neural network backpropagation, yang
mengambil studi kasus di Desa Tanjung Jaya, Kelurahan Surabaya,
Kecamatan Sungai Serut, Kota Bengkulu.
Objek Desa Tanjung Jaya diangkat karena, merupakan salah satu Desa
yang terletak di kelurahan Surabaya yang sering mengalami banjir setiap
tahunnya, hal ini dikarenakan debit banjir yang ada lebih besar daripada
daya tampung sungai itu sendiri. Masyarakat sendiri menyadari akan
terjadinya banjir saat curah hujan yang tinggi terjadi di Desa Tanjung Jaya
tersebut. Sehingga, sebagian dari masyarakat belum sempat melakukan
tindakan siap siaga untuk mengatasi jika terjadi banjir. Oleh sebab itu,
penulis mencoba untuk membuat suatu sistem peramalan kenaikan
46

permukaan air di Desa Tanjung Jaya dengan articial neural network


backpropagation.
4.1.1. Analisis Kebutuhan Sistem
Analisis sistem dilakukan dengan terlebih dahulu melihat kebutuhan
dari sistem. Analisis kebutuhan sistem dilakukan untuk
mengidentifikasi kebutuhaan kebutuhan yang diperlukan dalam
membangun program aplikasi. Dalam penelitian ini dilakukan analisis
kebutuhan masukkan, kebutuhan proses, dan kebutuhan keluaran.
Penjelasan lebih lanjut dari ketiga analisis kebutuhan tersebut adalah
sebagai berikut:
1. Analisis kebutuhan masukkan
Analisis kebutuhan masukkan yang berupa data masukkan
dan perhitungan di dalam metode backpropagation. Data
yang diambil berupa data intensitas curah hujan (I), data luas
daerah aliran sungai (A) Sungai Serut, koefisien aliran (C) di
Desa Tanjung Jaya. Penjelasan mengenai data masukkan
tersebut dijelaskan pada bagian analisis data. Sedangkan
perhitungan yang digunakan mengacu pada landasan teori.
Teori tentang perhitungan tersebut telah dibakukan yang
ditujukan untuk mengolah perhitungan kenaikan permukaan
air.
2. Analisis kebutuhan proses
Analisis kebutuhan proses yang berupa pemodelan data.
Analsis ini dimaksudkan untuk menggambarkan prosesproses yang terdapat di dalam program aplikasi melalui

47

sebuah pemodelan. Pemodelan yang digunakan oleh penulis


adalah pendekatan terstruktur dan pemakaian Data Flow
Diagram (DFD) untuk menggambarkan aliran data.
3. Analisis kebutuhan keluaran
Analisis kebutuhan keluaran berupa tampilan program
aplikasi yang akan dirancang pada perancangan antarmuka.
Perancangan antarmuka program aplikasi ini menggunakan
perangkat lunak pendukung MatLab R2008b. Program
aplikasi ini nantinya akan dijalankan pada Windows Seven
yang disesuaikan dengan sistem operasi yang digunakan oleh
penulis dalam penelitian ini.
4.1.2. Analisis Data
Analisis data bertujuan untuk mengetahui data-data apa saja yang
diperlukan dalam progam aplikasi. Data yang diambil berupa data
intensitas hujan yang terjadi selama 4 bulan (120 hari) yakni pada bulan
November 2013 hingga Februari 2014 dengan rentang data selama satu
jam, data koefisien aliran sungai di Desa Tanjung Jaya, dan data luas
daerah aliran sungai Sungai Serut. Dimana data untuk training selama 3
bulan (bulan November 2013 bulan Januari 2014) sebanyak 92 hari.
Data untuk testing pada tanggal 1-4 Februari 2014. Dan data untuk
forecasting pada tanggal 6 Februari 2014 untuk memprediksi kenaikan
permukaan air tanggal 7 Februari

48

4.1.3 Analisis Flowchart


Bagan alir (flowchart) digunakan untuk mengetahui aliran prosedur
dari sistem aplikasi yang akan dibangun. Flowchart sistem yang
dirancang oleh penulis dapat dilihat pada Gambar 4.1 berikut ini:

Gambar 4.1 Flowchart Proses Sistem Peramalan Kenaikan permukaan


air secara umum

Berdasarkan flowchart pada Gambar 4.1, terdapat empat proses utama


dalam sistem yakni, pelatihan data dengan Jaringan Syaraf Tiruan
49

menggunakan Algoritma Backpropagation dengan metode pelatihan


Levenberg-Marquardt. Pengujian dengan menggunakan data target dan bobot
hasil dari pelatihan dengan menggunakan Algoritma Backpropagation metode
pengujian Levenberg-Marquardt, peramalan sistem dengan menggunakan
bobot hasil pelatihan, serta validasi yang merupakan hasil perbandingan
antara data prediksi dengan data sesungguhnya.
Berikut penjelasan flowchart yang terdapat pada Gambar 4.1:
1. Pertama user harus memilih menu pelatihan. Pada menu pelatihan
ini akan dilakukan proses pelatihan terhadap dat-data yang telah
diinputkan oleh user sebelumnya pada panel input data. Jika user
memilih menu pelatihan maka user menentukan parameter
jaringan syaraf tiruan, tetapi apabila user tidak ingin melakukan
pelatihan data maka user dapat memilih menu pengujian data.
2. Pada menu pengujian ini akan dilakukan pengujian terhadap data
yang sebelumnya belum pernah dilatih atau data yang baru
diinputkan oleh user. Proses uji ini dilakukan dengan mengambil
data uji yang telah diinputkan oleh user, kemudian mengambil
bobot-bobot hasil pelatihan. Selanjutnya menguji bobot dengan
jaringan syaraf tiruan. Apabila user tidak ingin melakukan
pengujian data, maka user dapat memilih menu prediksi.
3. Pada menu prediksi ini user dapat meramalkan besar kenaikan
permukaan air satu jam kedepan. Pada menu prediksi ini sistem
akan mengambil data yang akan diprediksi yang telah diinputkan
oleh user, serta bobot hasil pelatihan, yang nantinya akan
dilakukan prediksi dengan menggunakan jaringan syaraf tiruan.

50

4. Apabila user sudah melakukan prediksi dan ingin mengetahui


seberapa tingkat keakuratan hasil dari prediksi tersebut. Maka
user dapat memilih menu validasi. Pada menu validasi ini akan
dilakukan perbandingan antara hasil prediksi jaringan syaraf
tiruan dengan data sesungguhnya yang disajikan dalam bentuk
grafik. Apabila user sudah melakukan validasi maka user dapat
keluar dari sistem.
4.2. Perancangan Sistem
Setelah dilakukan analisis sistem, dapat diketahui apa saja yang menjadi
komponen masukkan, keluaran dan interface program aplikasi yang
dibangun sehingga sesuai dengan rencana. Perancangan sistem terdiri dari
perancangan Data Flow Diagram (DFD) dan perancangan antarmuka (user
interface).
4.2.1. Perancangan Data Flow Diagram(DFD)
Untuk lebih memahami tahapan dalam pembuatan sistem, pada
bagian ini akan dijelaskan alur proses dari sistem secara grafis dengan
menggunakan pendekatan pemodelan Data Flow Diagram (DFD)
dengan notasi DeMarco dan Yourdan. Berikut desain dari masingmasing proses:

51

Gambar 4.2. Diagram Konteks

Diagram Konteks menggambarkan sistem secara umum. Pada


sistem ini terlihat bahwa hanya terdapat pengguna aplikasi (user)
yang dapat menggunakan sistem. User akan memberikan sejumlah
data yang dibutuhkan oleh sistem seperti koefisien aliran, intensitas
hujan, luas daerah aliran sungai, learning rate (laju pembelajaran) ,
momentum, maksimum epoh, goal (kinerja tujuan), gradien
minimum, maximum fail (maksimum kegagalan), jumlah epoh yang
akan ditunjukkan kemajuannya.
Sedangkan yang diberikan oleh sistem kepada user yaitu data
peramalan besar kenaikan permukaan air kedepannya berdasarkan
perhitungan yang terdapat pada metode Backpropagation.

52

Gambar 4.3. DFD Level 1

DFD Level 1 merupakan penjelasan lebih lanjut dari Diagram


Konteks. Di dalam sistem yang akan dibangun terdapat empat proses
utama yang berjalan yaitu proses pelatihan data, proses pengujian

53

data, proses peramalan data dan proses validasi. Penjelasan masingmasing proses yaitu sebagai berikut:
1. Proses Pelatihan Data
Pada proses ini, user memasukkan data ke dalam sistem
yang berupa data koefisien aliran, data intensitas hujan, data
luas daerah aliran sungai, data target, dan data parameter
jaringan. Pada proses ini dilakukan pelatihan data dengan
Backpropagation menggunakan metode LevenbergMarquardt. Hasil dari pelatihan akan berupa bobot yang
nantinya digunakan untuk pengujian dan peramalan data.
Data pelatihan ini akan disimpan dalam database dengan
menggunakan MySQL .
2. Proses Pengujian Data
Pada proses pengujian ini, user akan memasukkan kembali
data koefisien aliran, data intensitas hujan, data luas daerah
aliran sungai, data target dan data parameter jaringan. Disini
akan dilakukan pengujian apakah data yang dihasilkan sama
atau mendekati data target (data sesungguhnya) dengan
menggunakan bobot hasil pelatihan sebelumnya. Pengujian
disini digunakan untuk membuktikan apakah pelatihan data
yang kita lakukan sudah benar atau tidak. Data pengujian ini
juga nantinya akan disimpan dalam database.
3. Proses Peramalan Data
Pada peramalan data ini, user kembali menginputkan data
koefisien aliran, data intensitas hujan, data luas daerah aliran
sungai, dan data parameter jaringan. Hasil dari peramalan ini
54

sendiri akan berbentuk kenaikan permukaan air (Q)


kedepannya. Data dari peramalan juga akan disimpan dalam
database dengan menggunakan MySQL.
4. Proses Validasi
Pada proses validasi ini user kembali menginputkan data
koefisien aliran, data intensitas hujan, data luas daerah aliran
sungai, dan data parameter jaringan. Hasil dari data prediksi
yang telah dilakukan pada proses prediksi akan dibandingkan
dengan data-data yang telah diinputkan pada proses validasi
untuk mengetahui seberapa akurat hasil prediksi yang
dilakukan. Hasi dari validasi ini disajikan dalam bentuk
grafik.
4.2.2. Perancangan Antarmuka (User Interface)
Tahap perancangan user interface menyediakan tampilan antarmuka
untuk interaksi antar pengguna dengan sistem yang akan dibangun.
Perancangan antarmuka ini diharapkan agar pengguna atau user dapat
berinteraksi dengan mudah dalam penggunaan sistem tersebut.
Perancangan antarmuka dalam program aplikasi ini terdiri dari lima
rancangan antarmuka. Lima rancangan antarmuka yaitu form Menu
Utama, form Prediksi, form bantuan, form tentang dan form keluar.
Penulis membuat perancangan antarmuka menggunakan Microsoft
Visio 2007.
1. Form Menu Utama
Form ini merupakan antarmuka saat pertama kali program
aplikasi dijalankan. Pada form ini berisi semua menu-menu

55

pilihan yang dapat digunakan oleh user untuk meramalkan


besar kenaikan permukaan air di Desa Tanjung Jaya,
Kelurahan Surabaya, Kecamatan Sungai Serut, Kota
Bengkulu. Tampilan rancangan form Menu Utama dalam
sistem yang akan dibangun adalah sebagai berikut:

Gambar 4.4 Rancangan Antarmuka Form Menu Utama

Pada Gambar 4.4 diatas dapat dilihat terdapat nama dari


program sistem yang akan dibangun oleh penulis. Dibawah
logo Universitas Bengkulu terdapat nama dari pengembang
sistem. Sedangkan pada bagian bawah terdapat menu-menu

56

pilihan yang dapat digunakan oleh user yaitu menu Prediksi,


Bantuan, Tentang dan Keluar.
2. Form Menu Prediksi
Form ini merupakan antamuka saat menu prediksi
dijalankan. Pada form ini user memasukkan data-data yang
dibutuhkan oleh sistem. Tampilan rancangan form Prediksi
dalam sistem yang akan dibangun adalah sebagai berikut:

Gambar 4.5 Rancangan Antarmuka Form Prediksi

1. Menu Input Data (A)


Pada menu ini pengguna aplikasi (user) akan
mengisi data koefisien aliran (C), intensitas hujan (I),
luas daerah aliran sungai (A) dan data target (T).
Koefisien daerah aliran sungai yang diinputkan oleh user

57

untuk Desa Tanjung Jaya itu sendiri sebesar 0.35 yang


diperoleh dari hasil perhitungan Cdas . Luas Derah Aliran
Sungai di Desa Tanjung Jaya yang merupakan DAS
Sungai Serut sebesar 953.97 ha atau 9.5397km2 . Setelah
menginputkan data koefisien, intensitas, luas dan target,
user akan memilih apakah data yang telah dimasukkan
kedalam data latih (simpan latih), data uji (simpan uji),
data ramal (simpan prediksi) dan data validasi (validasi).
Dimana data yang dimasukkan oleh user tersebut akan
secara otomatis tersimpan kedalam database sesuai
dengan menu pilihan yang ada, yakni latih, uji, prediksi,
2.

dan bandingkan.
Menu Parameter Jaringan (B)
Pada menu parameter jaringan, user akan
menginputkan jumlah learning rate, maksimum epoch,
goal yang akan dicapai, jumlah momentum, dan show
iterasi. Maximum fail, Gradien Minimum.
Learning rate adalah laju pembelajaran. Semakin
besar nilai learning rate akan berimplikasi pada semakin
besarnya langkah pembelajaran. Jika learning rate diset
terlalu besar, maka algoritma akan menjadi tidak stabil.
Sebaliknya, jika learning rate diset terlalu kecil, maka
algoritma akan konvergen dalam jangka waktu yang
sangat lama. Pada sistem sudah diberi penjelasan bahwa

58

learning rate yang dipakai berkisar antara 0.001 1.


Pada sistem ini learning rate yang dipakai sebesar 0.1
Maksimum epoch adalah jumlah epoh maksimum
yang boleh dilakukan selama proses pelatihan. Iterasi
akan dihentikan apabila nilai epoh melebihi maksimum
epoh. Pada sistem ini maksimum epoh yang dipakai
sebesar 76.
Momentum digunakan untuk mempercepat proses
pembelajaran pada saat training dilakukan, sehingga
jaringan dapat mencapai konvergensi dalam waktu yang
cepat. Tetapi jika momentum diset terlalu besar, maka
jaringan akan mengalami ketidakstabilan. Oleh sebab itu
pada sistem ini diberi penejelasan penggunaan
momentum berkisar antara 0.5 0.9. Pada sistem ini
momentum yang dipakai sebesar 0.8
Goal atau kinerja tujuan adalah target nilai fungsi
kinerja. Iterasi akan dihentikan apabila nilai fungsi
kinerja kurang dari atau sama dengan kinerja tujuan.
Pada sistem ini kinerja tujuan yang digunakan adalah
10-10 atau 1e-10.
Show iterasi atau jumlah epoh yang akan
ditunjukkan kemajuannya. Menunjukkan berapa jumlah
epoh berselang yang akan ditunjukkan kemajuannya.

59

Pada sistemini jumlah epoh yang akan ditunjukkan


kemajuannya sebesar 20.
Maximum fail atau maksimum kegagalan diperlukan
apabila pada algoritma disertai dengan validitas
(optional). Maksimum kegagalan ketidakvalitan terbesar
yang diperbolehkan. Apabila gradien pada iterasi ke-k
lebih besar daripada gradien iterasi ke-(k-1), maka
kegagalannya akan bertambah 1. Iterasi akan dihentikan
apabila jumlah kegagalan lebih dari maksimum
kegagalan. Pada sistem ini maksimum kegagalan yang
digunakan sebesar 6.
Gradien minimum adalah akar dari jumlah kuadrat
semua gradien (bobot input, bobot lapisan, bobot bias)
terkecil yang diperbolehkan. Iterasi akan dihentikan
apabila nilai akar jumlah kuadrat semua gradien ini
kurang dari gradien minimum. Pada sistem ini gradien
yang digunakan adalah 1e-10 atau 10-10.
Penggunaan parameter jaringan disini bertujuan
untuk mempercepat proses training agar dapat mencapai
konvergensi.
3.

Menu Pilihan (C)


Pada menu pilihan ini, user akan memilih apakah
akan melakukan Latih, Uji, dan Validasi. Apabila user
memilih button latih maka akan dilakukan proses
pelatihan berdasarkan data yang telah diinputkan oleh
60

user sebelumnya. Jika user memilih button uji maka


akan dilakukan pengujian terhadap data-data yang telah
diinputkan oleh user dengan menggunakan bobot hasil
pelatihan. Dan jika user memilih button validasi, maka
akan dilakukan proses validasi yang tujuannya untuk
mengetahui seberapa akurat hasil prediksi yang
dihasilkan oleh jaringan syaraf tiruan.
3. Form Menu Bantuan
Form ini merupakan antarmuka saat menu Bantuan
dijalankan. Pada menu ini berisi tentang tata cara
menggunakan sistem (berupa petunjuk) agar user dapat
menggunakan sistem dengan baik dan benar. Tampilan
rancangan form Bantuan dalam sistem yang akan dibangun
adalah sebagai berikut:

Gambar

4.6. Rancangan Antarmuka Form Bantuan

4. Form Menu Tentang


61

Form ini merupakan antarmuka saat menu Tentang


dijalankan. Pada form ini hanya terdapat penjelasan
mengenai penjabaran sistem dan pengembang sistem.
Tampilan rancangan form Tentang dalam sistem yang akan
dibangun adalah sebagai berikut:

Gambar 4.7. Rancangan Antarmuka Form Tentang

5. Form Menu Keluar


Form ini merupakan antarmuka saat menu Keluar
dijalankan. Pada form ini terdapat pilihan apakah user ingin
keluar dari aplikasi atau tidak. Jika user memilih Ya, maka
user akan keluar dari sistem, tetapi jika user memilih tidak
maka user akan tetap berada didalam sistem. Tampilan
rancangan form Keluar dalam sistem yang akan dibangun
adalah sebagai berikut

62

Gambar 4.8. Rancangan Antarmuka Form Keluar

4.3. Struktur Basis Data


Basis data merupakan komponen yang penting pada sistem
informasi. Karena di dalam basis data inilah data-data akan disimpan.
Adapun Basis Data sistem ini adalah sebagai berikut:

Tabel 4.1. Data Latih

K
iel
d

y
p
e

a
n
j
a
n
g

o*

n
t

eterangan

Id
entitas data
training
K
oe
fis
ie
n_
la

o
u
b
l
e

oefisien aliran
training

In
uj
an
_l
a

o
u
b
l
e

tensitas hujan
training

63

ua
s_
la

o
u
b
l
e

eb
it_
la

o
u
b
l
e

L
uas daerah aliran
sungai training

K
enaikan
permukaan air
training

D
ar
ge
t_l
a

o
u
b
l
e

ata target
training

Tabel 4.2. Data Uji

K
iel
d

y
p
e

a
n
ja
n
g

o*

n
t

eterangan

I
dentitas data
testing
K
oe
fis
ie
n_
uj

o
u
b
l
e

uj
an
_u
j

o
u
b
l
e

oefisien aliran
testing

I
ntensitas hujan
testing

L
64

ua
s_
uj

o
u
b
l
e

uas daerah
aliran sungai
testing

K
eb
it
_u
j

o
u
b
l
e

enaikan
permukaan air
testing

ar
ge
t_
uj

o
u
b
l
e

ata target
testing

Tabel 4.3. Data Ramal

K
iel
d

y
p
e

a
n
j
a
n
g

eterangan

o*

n
t

dentitas data
ramal

K
oe
fis
ie
n_
ra

o
u
b
l
e

uj
an
_r
a

o
u
b
l
e

oefisien aliran
ramal

I
ntensitas hujan
ramal

L
65

ua
s_
ra

o
u
b
l
e

uas daerah
aliran sungai
ramal

K
eb
it
_r
a

o
u
b
l
e

enaikan
permukaan air
ramal

Tabel 4.4. Data Validasi

K
ie
ld

y
p
e

a
n
j
a
n
g

eterangan

o
*

n
t

dentitas data
ramal

K
o
ef
is
ie
n
_
v
a

o
u
b
l
e

uj
a
n
_
v
a

o
u
b
l
e

u
as

o
u

oefisien aliran
ramal

I
ntensitas hujan
ramal

L
uas daerah
aliran sungai
66

_
v
a

b
l
e

ramal

K
e
bi
t_
v
a

o
u
b
l
e

enaikan
permukaan air
ramal

Berikut ini adalah relasi dari Tabel-Tabel yang dibuat:

67

BAB V
HASIL DAN PEMBAHASAN

Pada bab ini akan dibahas mengenai hasil dan pembahasan mengenai
program yang telah dibuat berdasarkan dengan analisis dan perancangan sistem
pada bab sebelumnya. Pembahasan terdiri dari implementasi sistem dan uji coba
program.

5.1

Implementasi Sistem
Pada bab analisis dan perancangan sistem telah dibahas tentang desain
dari sistem yang akan dibuat. Desain tersebut merupakan panduan bagi
penulis untuk mengembangkannya ke dalam perangkat lunak atau program
yang dibuat dengan menggunakan bahasa pemrograman MatLab versi
7.7.0.741 (R2008b). Berikut ini akan dijelaskan beberapa prosedur dan
fungsi program yang digunakan dalam impelementasi sistem yang telah
dirancang.
Antarmuka Form Menu Utama menampilkan sekilas informasi judul
tentang program yang dibuat. Terdapat empat button yang merupakan menu
yang dapat dipilih oleh pengguna sesuai kebutuhan, yang terdiri dari menu
Prediksi, menu Bantuan, menu Tentang, dan menu Keluar.
Tampilan antarmuka Form Menu Utama dapat dilihat pada Gambar 5.1

68

Gambar 5.1 Antarmuka Form Menu Utama

5.2 Implementasi Form Menu Prediksi


Tampilan antarmuka Form Menu Prediksi dapat dilihat pada Gambar 5.2.

Gambar 5.2. Antarmuka Form Menu Prediksi

69

Form Menu Prediksi berfungsi sebagai form input sejumlah data yang
dibutuhkan untuk proses training (pelatihan), testing (pengujian), forecasting
(peramalan), serta data validasi. Dalam form ini terbagi 3 bagian yakni : (A)
Input Data, (B) Parameter Jaringan dan (C) Menu Pilihan Proses. Gambar 5.3
berikut ini menunjukkan pembagian atribut dan cara pengoperasian Form
Menu Prediksi.

Gambar 5.3. Atribut-Atribut Pada Form Menu Prediksi

A. Edit Text Input Data


Atribut ini merupakan kumpulan dari edit text yaitu koefisien
aliran, intentitas curah hujan, luas daerah aliran sungai, dan data target
(data yang sesungguhnya). Koefisien aliran di Desa Tanjung Jaya ini
bernilai 0.35. Nilai intensitas curah hujan di Desa Tanjung Jaya
diambil berdasarkan data dari BMKG dari bulan November 2013
sampai dengan bulan Februari 2014. Luas daerah aliran sungai di
Desa Tanjung Jaya ini yang merupakan Daerah Aliran Sungai Serut
70

sebesar 953.97 ha atau 9.5397km2 . Data target atau data


sesungguhnya merupakan data intensitas hujan yang terjadi di Desa
Tanjung Jaya pada bulan November 2013 sampai dengan bulan
Februari 2014. Button simpan latih pada sistem ini berfungsi untuk
menyimpan data-data yang telah diinputkan oleh user kedalam
database MySQL. Adapun potongan program pada button simpan
latih adalah sebagai berikut:
c=
get(handles.koef,'String');
i=
get(handles.in,'String');
a=
get(handles.lu,'String');
t=
get(handles.tar,'String');
c2=str2num(c);
i2=str2num(i);
a2=str2num(a);
t2=str2num(t);
t3=t2*a2*c2
q=c2*i2*a2
debit(c2, i2, a2,
q, t3);

B. Edit text Parameter Jaringan (B)


Atribut ini merupakan kumpulan dari edit text learning rate, epoch,
momentum, goal, show iterasi, maksimum fail, dan gradien
minimum. Learning rate yang diinputkan pada sistem ini sebesar
0.1, epoch sebesar 200, momentum sebesar 0.8, goal sebesar 1e-10,
show iterasi sebesar 20, maksimum fail sebesar 6, dan gradien
minimum sebesar 1e-10. Adapun potongan program dari learning
rate adalah sebagai berikut:
71

learning=str2double
(get(hObject,'String'))
handles.learning=le
arning;
guidata(hObject,han
dles)

C. Button Menu Pilihan (C)


Atribut button menu pada sistem ini terdiri dari Latih, Uji, Prediksi,
Keluar dan Kembali. Apabila user memilih button Latih, maka
sistem akan menampilkan proses training. Adapun potongan
program dari button Latih adalah sebagai berikut:
conn = database('curah_hujan','root','');
setdbprefs('DataReturnFormat','numeric');
D = exec(conn,'select debit from datatraining');
D = fetch(D)
D=D.Data;
[m,n]=size(D);
p = D';
conn = database('curah_hujan','root','');
setdbprefs('DataReturnFormat','numeric');
E = exec(conn,'select target from datatraining');
E = fetch(E)
E=E.Data;
[m,n]=size(E);
t = E';
min_p = min(min(p));
max_p = max(max(p));
pn = (0.8*(p-min_p)/(max_p-min_p))+0.1
min_t = min(min(t));
max_t = max(max(t));
tn=(0.8*(t-min_t)/(max_t-min_t))+0.1
net=newff(minmax(p),[10 5 1], {'tansig' 'logsig'
'purelin'}, 'trainlm');
net=init(net);

72

net.IW{1,1}
net.b{1,1}
net.LW{2,1}
net.b{2,1}
net.LW{3,2}
net.b{3,1}
BobotAwal_Input = net.IW{1,1}
BobotAwal_Bias_Input = net.b{1,1}
BobotAwal_Lapisan1 = net.LW{2,1}
BobotAwal_Bias_Lapisan1 = net.b{2,1}
BobotAwal_Lapisan2 = net.LW{3,2}
BobotAwal_Bias_Lapisan2 = net.b{3,1}
net.trainParam.epochs=handles.epoch
net.trainParam.goal=handles.goal;
net.trainParam.max_fail=handles.fail;
net.trainParam.min_grad=handles.gradien;
net.trainParam.mu=0.001;
net.trainParam.mu_max=1e+10;
net.trainParam.show=handles.iterasi;
net.trainParam.mc=handles.momentum;
net.trainParam.lr=handles.learning;
net=train(net,pn,tn);pause
BobotAkhir_Input = net.IW{1,1}
BobotAkhir_Bias_Input = net.b{1,1}
BobotAkhir_Lapisan1 = net.LW{2,1}
BobotAkhir_Bias_Lapisan1 = net.b{2,1}
BobotAkhir_Lapisan2 = net.LW{3,2}
BobotAkhir_Bias_Lapisan2 = net.b{3,1}
an = sim(net,pn);
ta=round((((tn-0.1)*(max_t-min_t))/0.8)+min_t)
o=round((((an-0.1)*(max_t-min_t))/0.8)+min_t)
H = [(1:size(p,2))' ta' o' (ta'-o')];
sprintf('%2d %9.2f %7.2f %5.2f\n',H')
[bx,a,rx] = postreg(o,ta)

73

Pause
plot([1:size(p,2)]',ta,'bo',
[1:size(p,2)]',o','r*');
title('Hasil Pengujian dengan Data Pelatihan:
Target(o), Output(*)');
xlabel('Data ke-'); ylabel('Target/Outpute');
Pause

Hasil dari proses training jaringan dapat dilihat pada Gambar


5.4. dibawah ini:

Gambar 5.4. Tampilan Proses Training

Pada Gambar 5.4. dapat dilihat bahwa goal 1e-10 ditemukan hanya
dalam 76 kali iterasi. Pada percobaan ini, jenis pelatihan yang digunakan
adalah Levenberg-Marquardt. Performance, yang menyatakan metode untuk
menghentikan proses jika sudah mendekati real misalnya Mean Squared
Error (MSE). Epoch, menyatakan jumlah perulangan pembelajaran. Pada
sistem ini epoch 76 iterasi, berarti proses pembelajaran berhenti setelah
74

perulangan sebanyak 76 kali. Time, menyatakan waktu yang ditempuh oleh


Matlab dalam melakukan pembelajaran. Performance, menyatakan kualitas
hasil pembelajaran, makin mendekati nol, kualitasnya makin baik. Gradient,
merupakan kemiringan antara satu iterasi dengan iterasi berikutnya. Proses
pembelajaran akan berhenti biasanya jika kemiringan sudah tidak berubah.
Validation check bermaksud untuk mengecek apakah proses pembelajaran
mengarah ke arah yang tepat atau malah menyimpang. Di Region Plot
tampak tombol untuk melihat grafik hasil pembelajaran. Berikut ini adalah
tampilan dari region plot:
a. Tampilan plot performance

Gambar 5.5. Tampilan Plot Performance

Pada Gambar 5.5. merupakan grafik hubungan antara epoch dengan


MSE (Mean Squarred Error). Terlihat bahwa nilai MSE turun yang artinya
training berhasil dengan ditemukannya goal.
b. Tampilan plot training state

75

Gambar 5.6. Tampilan Plot Training State

Pada Gambar 5.6 tampilan dari training state, terlihat ada grafik
hubungan antara epoch dengan gradient, grafik hubungan antara epoch
dengan mu, dan grafik hubungan antara epoch dengan val fail. Nilai gradien
pada proses training ini sebesar 1.2658e-006, nilai mu sebesar 0.0001, dan
validation checks sebesar 0.

c. Tampilan plot regression

76

Gambar 5.7. Tampilan Plot Regression

Gambar 5.7 merupakan plot regression pada proses preprocessing, pada


gambar target dengan output nilainya berkisar antara 0.1 0.9, hal ini terjadi
karena output dengan target dilakukan proses normalisasi data sehingga data
output dan target berada pada diantara range (0.1-0.9). Pada plot regresi ini
mempunyai korelasi sebesar1. yang artinya menunjukkan korelasi yang baik
antara data output dengan target karena bernilai 1.
Output jaringan dan target pada data latih dianalisis dengan regresi linier
dapat dilihat pada Gambar 5.8. dibawah ini:

77

Gambar 5.8. Hubungan antara target dengan output jaringan, untuk


data pelatihan

Pada Gambar 5.8. dapat dilihat bahwa output dengan target memiliki
korelasi (r) sebesar 1. Hal ini menunjukkan hasil yang baik untuk
kecocokkan output jaringan terhadap target. Hal ini dikarenakan grafiknya
berbentuk linear dengan posisi data point, output sama dengan target berada
pada best linear fit. Output jaringan untuk data pelatihan mempunyai
persamaan regresi Y = (1)T + (0.00056). Untuk mengetahui persamaan
regresi output suatu jaringan dapat menggunakan fungsi postreg pada
Matlab. Apabila output jaringan tepat sama dengan targetnya, maka
koefisien korelasi ini akan bernilai 1.
78

Berikut adalah hasil pengujian data pelatihan:

Gambar 5.9. Perbandingan antara target dengan output jaringan,


untuk data pelatihan.

Pada Gambar 5.9. merupakan hasil pengujian terhadap data yang ikut
dilatih pada proses pelatihan. Pada Gambar diatas data target (o) yang
berbentuk lingkaran, dan data output (*) yang berbentuk bintang, sebagian
berada di posisi yang sama persis. Hasil yang paling baik adalah jika semua
data output dan target berada pada posisi yang sama persis.
Apabila user memilih button Uji maka sistem akan melakukan proses
pengujian. Adapun potongan program dari button Uji adalah sebagai
berikut:

79

conn = database('curah_hujan','root','')
setdbprefs('DataReturnFormat','numeric');
A = exec(conn,'select debit from
datatesting');
A = fetch(A)
A = A.Data;
[m,n]=size(A);

setdbprefs('DataReturnFormat','numeric');
B = exec(conn,'select target from
datatesting');
B = fetch(B)
B = B.Data;
[m,n]=size(B);

min_Q = min(min(Q));
max_Q = max(max(Q));
Qn = ((0.8*(Q-min_Q)/(max_Q-min_Q))+0.1)
min_TQ = min(min(TQ));
max_TQ = max(max(TQ));
Tn = ((0.8*(TQ-min_TQ)/(max_TQ-min_TQ))+0.1)
bn = sim(net,Qn)
Qa=round((((Tn-0.1)*(max_tmin_t))/0.8)+min_t);
b=round((((bn-0.1)*(max_tmin_t))/0.8)+min_t);
L = [(1:size(Q,2))' Qa' b' (Qa'-b')];
sprintf('%2d %11.2f %9.2f %7.2f\n',L')
[m2,b1,r2] = postreg(b,Qa)
Pause
k = [1:size(Q,2)]';
plot(k,Qa,'bo',k,b','r*');
title('Hasil Pengujian dengan Data Uji
Target (o), Output(*)');
xlabel('Data ke-'); ylabel('Target/Output');
text(k+0.2*ones(length(k),1),Qa,int2str(k));

80

Pada Gambar 5.10. dibawah ini adalah tampilan output jaringan untuk data
uji terhadap data yang belum pernah dilatih sebelumnya. Hal ini dilakukan
untuk melakukan pengujian sejauh mana kemampuan jaringan yang telah
dilatih sebelumnya mengenli pola-pola data yang bersifat outlier.

Gambar 5.10. Hubungan antara target dengan output jaringan, untuk


data pengujian

Pada Gambar 5.10. merupakan hubungan antara output dengan target.


Output dengan target ini mempunyai koefisien korelasi bernilai 1. Hal ini
menunjukkan hasil yang baik untuk kecocokkan output jaringan dengan
target. Hal ini dikarenakan grafik yang ada berbentuk linear dengan posisi
data point, output sama dengan target berada pada posisi yang sama dengan

81

best fit linear. Persamaan regresinya Y = (1)T + (4.8e-0.16). Persamaan


regresi ini didapat dengan menggunakan fungsi postreg pada Matlab.
Perbandingan antara data target dengan output jaringan, untuk data
pengujian (data yang tidak dilatih sebelumnya) dapat dilihat pada Gambar
5.11. dibawah ini:

Gambar 5.11. Perbandingan antara target dengan output jaringan,


untuk data pengujian

Pada Gambar 5.11. output jaringan (*) dan target (o) berada di posisi
yang sama. Hasil yang terbaik terjadi apabila posisi (o) dan (*) betul-betul
berada pada posisi yang sama.
Selanjutnya, apabila user memilih button Prediksi, maka akan dilakukan
proses peramalan terhadap data yang telah diinputkan. Perlu diingat bahwa
82

data untuk proses train, test, dan forecast harus data yang riil tidak boleh
fiktif.
Berikut ini adalah gambar dari grafik peramalan kenaikan permukaan air
pada tanggal 7 Februari 2014.

Gambar 5.12. Hasil Prediksi Kenaikan permukaan air pada Tanggal 7


Februari

Berdasarkan grafik hasil prediksi pada Gambar 5.12. garis berwarna merah
dengan lingakaran menunjukkan data target(data sesungguhnya), garis

83

putus-putus dengan berlian menunjukkan data output(data hasil prediksi).


Perbandingan antara output dengan target dapat dilihat pada Tabel 5.1.
dibawah ini.
Tabel 5.1. Perbandingan antara Data Target dengan Data Hasil
Prediksi

am
ke-

D
ata output
(hasil prediksi)

ata
targ
et
(dat
a
sesu
ngg
uhn
ya)

0
1
2
3
4
84

5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2

85

3
4
5
6
7
8
9
1
0

Berdasarkan Tabel 5.1 terlihat beberapa data hasil prediksi berbeda dengan
data target, perbedaan antara target dengan output (hasil prediksi) ini disebut
dengan error, yang akan nantinya akan dihitung dengan menggunakan
MAPE (Mean Absolute Percentage Error).
Jika user memilih button Kembali, maka user akan kembali ke menu
utama. Adapun potongan program dari button back adalah sebagai berikut:
figu
re(awal);

Jika user memilih button Keluar, maka user akan keluar dari menu
Prediksi. Adapun potongan program dari button keluar adalah sebagai
berikut:
clos
e;

86

Apabila user keluar dari menu prediksi, maka user akan kembali ke Form
Awal, Pada Form Awal ini terdapat Form Bantuan, Form Tentang dan Form
Keluar.

5.3 Implementasi Form Bantuan


Tampilan antarmuka Form Menu Bantuan dapat dilihat pada Gambar 5.13.

Gambar 5.13. Form Menu Bantuan

Pada antarmuka form menu bantuan ini berisi tentang tata cara
penggunaan sistem peramalan kenaikan permukaan air, pada antarmuka
form ini terdapat dua button yakni button kembali dan button keluar.
Dimana apabila user memilih button kembali, maka user akan kembali ke
form menu utama, tetapi jika user memilih button keluar, maka user akan
keluar dari form menu bantuan.
87

5.4. Implementasi Form Menu Tentang


Tampilan antarmuka form menu tentang dapat dilihat pada Gambar 5.14

Gambar 5.14. Form Menu Tentang

Pada antarmuka form menu tentang ini berisi tentang sistem dan pembuat
sistem. Pada form ini juga terdapat dua button, yakni button kembali dan
button keluar. Jika user memilih button kembali maka user akan kembali ke
form menu utama, tetapi jika user memilih button keluar, maka user akan
keluar dari antarmuka form menu tentang.

5.5

Implementasi Form Menu Keluar


Tampilan antarmuka form menu keluar dapat dilihat pada Gambar 5.15.

88

Gambar 5.15. Form Menu Keluar

Pada Gambar diatas apabila user memilih form menu keluar, maka akan
muncul kotak pesan dialog yang berupa pilihan. Apabila user memilih ya
maka user akan keluar dari sistem peramalan kenaikan permukaan air, tetapi
apabila user memilih tidak maka user akan kembali ke form menu utama.

5.6

Pengujian Sistem
Setelah dilakukan pengujian sistem dengan data kenaikan permukaan air
pada tanggal 7 Februari 2014, didapat nilai output yang tidak sama dengan
target, oleh sebab itulah diperoleh error. Untuk itu, dilakukan perhitungan
persentase error yang dimiliki oleh sistem. Adapun rumus yang digunakan
untuk melakukan persentase error dengan menggunakan MAPE seperti
dibawah ini:
MAPE(%) =

1
N

PiA - PiF / PiA| x 100%........(5.1)

i=1

Tabel 5.2 di bawah ini menunjukkan persentase error di setiap peramalan


yang dilakukan dengan kenaikan permukaan air
Tabel 5.2. Perbandingan Data Target dan Data Hasil Prediksi tiap
jam

K
a
n
g
g
al

enaik
an
perm
ukaan
air
89

E
rror
peram
alan
JST
(%)

(m3/
jam)
arget

era
ma
lan
JS
T
0

6
0
2
2
0
1
4

7-08

0
6
0
2
2
0
1
4

8-09

6
0
2
2
0
1
4

9-10

0
6
0
2
-

0-11

90

2
0
1
4
0
6
0
2
2
0
1
4

1-12

0
6
0
2
2
0
1
4

2-13

6
0
2
2
0
1
4

3-14

6
0
2
2
0
1
4

4-15

91

0
6
0
2
2
0
1
4

5-16

0
6
0
2
2
0
1
4

6-17

6
0
2
2
0
1
4

7-18

6
0
2
2
0
1
4

8-19

0
6
0
2

9-20

92

2
0
1
4
0
6
0
2
2
0
1
4

0-21

6
0
2
2
0
1
4

1-22

0
6
0
2
2
0
1
4

2-23

6
0
2
2
0
1
4

3-24

93

0
6
0
2
2
0
1
4

0-01

0
6
0
2
2
0
1
4

1-02

6
0
2
2
0
1
4

2-03

6
0
2
2
0
1
4

3-04

0
6
0
2

4-05

94

2
0
1
4
0
6
0
2
2
0
1
4

5-06

6
0
2
2
0
1
4

6-07

0
7
0
2
2
0
1
4

7-08

7
0
2
2
0
1
4

8-09

95

0
7
0
2
2
0
1
4

9-10

0
7
0
2
2
0
1
4

0-11

7
0
2
2
0
1
4

2-13

7
0
2
2
0
1
4

3-14

0
7
0
2

4-15

96

2
0
1
4
0
7
0
2
2
0
1
4

5-16

7
0
2
2
0
1
4

6-17

0
7
0
2
2
0
1
4

7-18

7
0
2
2
0
1
4

8-19

97

0
7
0
2
2
0
1
4

9-20

0
7
0
2
2
0
1
4

0-21

7
0
2
2
0
1
4

1-22

7
2
0
2
0
1
4

2-23

0
4

MAPE

0
.5355

Error Minimum

Error

2
98

Maksimum

1.42

Berdasarkan Tabel diatas dapat dikatakan hasil prediksi JST mendekati


dengan data aktual. Error yang paling besar yakni 21.42%, dan error yang
paling kecil adalah 0%. Selanjutnya untuk mengetahui seberapa valid hasil
dari peramalan JST dapat menggunakan rumus tingkat akurasi yang telah
dijelaskan sebelumnya pada persamaan (3.2), yakni:
Tingkat akurasi(%) =

datauji benar
jumlah total datauji

Tingkat akurasi (%) =

39
40

x 100%

x 100%

Tingkat akurasi (%) = 0.975 x 100%


Tingkat akurasi (%) = 97.5%
Jadi, berdasarkan pengujian yang dilakukan terhadap sistem
peramalan kenaikan permukaan air dengan artificial neural network
backpropagation didapat bahwa sistem peramalan kenaikan permukaan air
mempunyai MAPE sebesar 0.5355% dengan tingkat akurasi sebesar 97.5%.

99

5.7

Pengujian Arsitektur Jaringan


M

e
a
r
n
i
n
g
r
a
t
e

poch

o
m
en
tu
m

oal

h
o
w

.
0
0
1

.8

e-10

.
0
9

.8

e-10

.8

e-10

a
x
i
m
u
m

it
e
r
a
s
i

G
rad
ien
mi
ni
mu
m

im
e

ete
ran
ga
n

:00
:04

aik

:00
:03

aik

:00

aik

f
ai
l
6

1
e10

1
e10

1
e-

85

0
8

10
6

.
0
7

.8

e-10

.
0
6

.8

e-10

.
0
5

.8

e-10

.
0
4

.8

e-10

1
e10

e-10

.8

e-10

e10

:00
:02

aik

:00
:02

aik

:00
:02

aik

:00

aik

1
e-

86

aik

6
.

:00
:02

1
e10

6
.8

aik

1
e10

:00
:02
1

e10
6

.
0
3

:02

0
2

10
6

.
0
1

.8

e-10

.
9

.8

e-10

1
e10

.
8

.8

e-10

.
7

.8

e-10

e10

.8

e-10

.
5

.8

e-10

.8

e-10

aik

:00
:02

aik

:00
:02

aik

:00
:02

aik

:00
:02

aik

:00

aik

1
e10

1
e10

1
e-

87

:00
:02

1
e10

6
.
6

aik

:00
:02
1

e10
6

:02

10
6

.
3

.8

e-10

.
2

.8

e-10

1
e10

.
1

.8

e-10

.8

e-10

e10

.
1

00

.8

e-10

.
1

.8

e-10

aik

:00
:02

an
gat
Bai
k

:00
:02

aik

:00
:02

aik

:00
:01

ura
ng
bai
k

1
e10

1
e10

88

:00
:02

1
e10

6
1

aik

6
0

:00
:02
1

e10
6

:02

6
3

.
1

.5

e-10

1
e10

6
4

.
1

.6

e-10

.
1

.7

e-10

e10

.8

e-10

.
1

.9

e-10

.
1

.8

e-1

e10

e-2

:00
:02

an
gat
bai
k

:00
:02

aik

:00
:00

ura
ng
bai
k

:00

ura

1
e-

89

aik

1
e10

6
.8

:00
:02

1
e10

aik

:00
:02
1

e10
6

.
1

aik

:00
:02

10

6
0

.
1

.8

e-3

.
1

.8

e-4

.
1

.8

e-5

e10

.8

e-6

.
1

.8

e-7

e10

.8

e-8

:00
:00

aik

:00
:00

aik

:00
:00

aik

:00

aik

1
e-

90

ura
ng
bai
k

1
e10

6
.

:00
:00

ura
ng
bai
k

1
e10

6
1

:00
:00

1
e10

.
1

ng
bai
k

:02

10
6

.
1

.8

e-9

.
1

.8

e-10

1
e10

.
1

.8

e-10

.
1

.8

e-10

.
1

.8

e-10

.
1

.8

e-10

an
gat
bai
k

:00
:02

aik

:00
:02

aik

:00
:02

aik

:00
:02

an
gat
bai
k

1
e10

1
e10

91

:00
:02

1
e10

6
0

aik

1
e10

:00
:01
1

e10

6
8

:01

1
2

.
1

.8

e-10

1
e10

2
3

.
1

.8

e-10

.
1

.8

e-10

e10

.8

e-10

.
1

.8

e-10

e10

.8

e-10

.
1

.8

e-10

e10

:00
:02

aik

:00
:02

aik

:00
:02

an
gat
bai
k

:00
:00

ura
ng
bai

1
e-1

92

aik

6
7

:00
:02

1
e10

6
.
1

aik

:00
:02
1

e10
4

.
1

aik

:00
:02

k
6
8

.
1

.
1

.8

e-10

.8

e-10

1
e-2

6
0

.
1

.8

e-10

.
1

.8

e-10

e-4

.8

e-10

.
1

.8

e-10

.8

e-10

:00
:00

aik

:00
:02

aik

:00
:01

aik

:00
:02

aik

:00

aik

1
e-6

1
e-7

1
e-8

93

aik

1
e-5

6
.
1

:00
:00
1

ura
ng
bai
k

1
e-3

6
0

:00
:00

:02
6

.
1

.8

e-10

.
1

.8

e-10

1
e-9

aik

:00
:02

aik

1
e10

94

:00
:02

BAB VI
KESIMPULAN DAN SARAN

6.1

Kesimpulan
Berdasarkan hasil dan analisa dari bab sebelumnya maka penulis dapat

mengambil kesimpulan sebagai berikut:


1. Sistem Peramalan Kenaikan permukaan air Dengan Artificial Neural
Network Backpropagation dibangun dengan menggunakan metode
Pemrograman Terstruktur dan menggunakan Data Flow Diagram (DFD)
serta menggunakan model pengembangan sistem sekuensial linier yang
bersifat sistematis dan berurutan.
2. Sistem Peramalan Kenaikan permukaan air Dengan Artificial Neural
Network Backpropagation yang dibangun mampu melakukan peramalan
terhadap kenaikan permukaan air, hal ini dibuktikan dengan tingat akurasi
yang dihasilkan pada tanggal 7 Februari 2014 sebesar 97.5% dengan
MAPE sebesar 0.5355%.
6.2

Saran
Saran yang penulis ajukan untuk perbaikkan dan pengembangan lebih
lanjut mengenai aplikasi ini adalah sebagai berikut:
1. Pengembangan Sistem Informasi Peramalan Kenaikan permukaan air
Dengan Artificial Neural Network Backpropagation ini perlu
memperhatikan pembagian data untuk data latih, data uji, dan data ramal,

88

agar tidak terjadi overheading dalam pelatihan Jaringan Syaraf Tiruan


nantinya.
2. Mengembangkan dengan metode pembelajaran yang lebih sempurna,
dimana data feedback dan error peramalan dijadikan salah satu variabel
pembelajaran selanjutnya.

89

DAFTAR PUSTAKA
Amaliah, B. d. (2011). Penentuan Jenis Produk Kosmetik Pilihan Berdasarkan
Faktor Usia Dan Warna Kulit Menggunakan Jaringan Syaraf Tiruan.
http://eprints.undip.ac.id/252801/ML2F/002572.pdf .
Irawan,

A. (2012). Perbandingan Metode Jaringan Syaraf Tiruan


Backpropagation Dan Learning Vector Quantitation Pada Pengenalan
Wajah . http://komputa.if.unikom.ac.id .

Jaya, I. d. (2007). Identifikasi Kawanan Ikan Lemuru Dari Data Hidroakustik


Dengan Metode Jaringan Syaraf Tiruan. http://reporitory.unhas.ac.id .
Jek Siang, J. (2005). Jaringan Syaraf Tiruan & Pemrogramannya
Menggunakan MATLAB. Yogyakarta: ANDI.
Jogiyanto. (2005). Analisis dan Desain Sistem Informasi : Pendekatan
Terstruktur Teori dan Praktik Aplikasi Bisnis. Yogyakarta: ANDI.
Ketahun, B. (2013). Laporan Hasil Monitoring Curah Hujan di Provinsi
Bengkulu. Bengkulu: BMKG Propinsi Bengkulu.
Kusumadewi, S. (2004). Artificial Intelligent (Teknik dan Aplikasinya). Jakarta:
Graha Ilmu.
Nasution,
M.
I.
(2011).
Pengertian
Curah
Hujan.
http://repository.usu.ac.id/bitstream/123456789/19244/4/Chapter
%2011.pdf .
Novikaginanto. (2012, November 14). Dipetik November 14, 2012, dari
http://novikaginanto.wordpress.com.
Pratiwi, S. (2011). Sistem Informasi Penerimaan Keuangan Universitas
Bengkulu. Bengkulu.
Pressman, R. S. (2002). Rekayasa Perangkat Lunak Pendekatan Praktisi (Buku
Satu). Yogyakarta: ANDI.
Salman, A. G. (2011). Implementasi Jaringan Syaraf Tiruan Recurrent Dengan
Metode Pembelajaran Gradient Descent Adaptive Learning Rate
Untuk
Pendugaan
Curah
Hujan.
http://journal.uii.ac.id/index.php/Snati/article/viewFile/2222/2167 .
Setyawan, H. D. (2008). Peramalan Ketinggian Muka Air Dengan Jaringan
Syaraf Tiruan Perambatan-Balik. Eprints.Undip.ac.id/25353/2/ML2F003506.pdf .
90

Soemarno.
(2007).
Penelitian.
http://images.soemarno.multiply.com/attachment/0/RvmpdAoKCtgAA
BUBWx01/PENELITIAN.ppt?nmid=59416790 .
Syarif, A. (2009). Perancangan Sistem Informasi Berbasis WEB dengan
Menggunakan PHP & MYSQL di Program Studi Ilmu Keperawatan
Universitas
Sumatera
Utara.
http://repository.usu.ac.id/bitstream/123456789/7819/1/09E02119.pdf
Trisnawan, B. (2013). Jaringan
fst10.web.unair.ac.id .

Syaraf

Tiruan.

http://bayu-t--

Widodo, P. P. (2013). Penerapan Data Mining Dengan Matlab. Bandung:


Rekayasa Sains.
Wijayaning, R. d. (2009). Modul Pratikum Rekayasa Perangkat Lunak.
Yogyakarta: Universitas Islam Indonesia.
Windarto, J. d. (2008). Model Prediksi Tinggi Muka Air Sungai Kali Garang
Semarang Dengan Jaringan Syaraf Tiruan . Portalgaruda.org .

91

LAMPIRAN

92

LAMPIRAN 1
Perhitungan Manual Data Pelatihan
Berikut adalah data training yang disimpan dalam database. Sampel yang diambil sebanyak
24 data latih (sebelum dilakukan normalisasi)

K
o
e
f
i
s
i
e
n

L
u
a
s
(
k
m
2
)

ntensi
tas
(mm/j
am)

0
.
3
5

0
.
3
5

0
.
3
5

0
.
3
5

0
.
3
5

0
.
3

D
ebit
(m3/jam)

.5
3
9
7
9

.5
3
9
7
9

.5
3
9
7
9

.5
3
9
7
9

.5
3
9
7
9
.5
3
1

9
7

0
.
3
5

0
.
3
5

0
.
3
5

0
.
3
5

.1

.5
3
9
7
9
.5
3
9
7

0
.3338895

0
.8

0
.
3
5

0
.

9
.5
3
9
7

0
.
3
5

.5
3
9
7

0
.
3
5

0
.
3
5

2
.671116

.5
3
9
7
9

.1

.5
3
9
7

.3338895

.0

.5
3
9
7

.67779

.1

.5
3
9
7

.0116795

.1

.5
2

0
.3338895

3
5

3
9
7

0
.
3
5

0
.
3
5

0
.
3
5

0
.
3
5

0
.
3
5

0
.
3
5

0
.
3
5

0
.
3
5

.5
3
9
7
9

.5
3
9
7
9

.5
3
9
7
9

.5
3
9
7
9

.5
3
9
7
9

.5
3
9
7
9

.5
3
9
7
9

.5
3
9
7
9
3

.
3
5

.5
3
9
7

Sebelum dilakukan preprocessing, maka data input dan target dilakukan transpose terlebih
dahulu (baris menjadi kolom, kolom menjadi baris)
pn = (0.8*(p-min_p)/(max_p-min_p))+0.1
p1 = 0
pn = (0.8*(0-0)/( 180.9681-0))+0.1
pn = 0.1

Berikut adalah hasil preprocessing data input yang disimpan pada matriks pn
pn=
Kolom 1 Sampai 16
0.1000 0.1000 0.1000 0.1000 0.1000 0.1000
0.1000 0.1015 0.1295 0.1310 0.1015 0.1000
Kolom 17 sampai 24
0.1000 0.1000 0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1015

0.1118

LAMPIRAN 2
Perhitungan Manual Data Uji
Berikut adalah data testing yang disimpan di dalam database (sebelum dilakukan normalisasi)
I
o

oe
fis
ie
n

ntensitas
(mm/jam
)

u
a
s
(
k
m

ebit (m /jam)

)
0

.3
5

.
5
3
9
7
0

.3
5

.
5
3
9
7
0

.3
5

.
5
3
9
7
0

.3
5

.
5
3
9
7
0

.3
5

.
5
3
9
7
0

0
1

.3
5

.
5
3
9
7
0

.3
5

.
5
3
9
7
0

.3
5

.
5
3
9
7
0

.3
5

.
5
3
9
7
0

.3
5

.
5
3
9
7
0

.3
5

.3
5

.3
5

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
2

9
7
0
4

.3
5

.
5
3
9
7
0

.3
5

.
5
3
9
7
0

.3
5

.3
5

.3
5

.3
5

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7

0
0

.3
5

.
5
3
9
7
3

0
1

.3
5

.
5
3
9
7
0

.3
5

.
5
3
9
7
0

.3
5

.3
5

.3
5

.3
5

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7

0
7

.3
5

.
5
3
9
7
0

.3
5

.
5
4

3
9
7
0
9

.3
5

.3
5

.3
5

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7

0
2

.3
5

.
5
3
9
7
0

.3
5

.3
5

.3
5

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7
5

0
6

.3
5

.
5
3
9
7
0

.3
5

.
5
3
9
7
0

.3
5

.3
5

.3
5

.3
5

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7

0
2

.3
5

.
5
3
9
7
0

.3
5

.4

.
5
6

.3355579999
999998

3
9
7
0
4

.3
5

.3
5

.3
5

0
.
5
3
9
7

.5

.
5
3
9
7
0

0
.
5
3
9
7

0
7

.3
5

.
5
3
9
7
0

.3
5

.3
5

.3
5

.6694475

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7
7

0
1

.3
5

.
5
3
9
7
0

.3
5

.
5
3
9
7
0

.3
5

.3
5

.3
5

.3
5

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7

0
7

.3
5

.
5
3
9
7
0

.3
5

.
5
8

3
9
7
0
9

.3
5

.3
5

.3
5

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7

0
2

.3
5

.
5
3
9
7
0

.3
5

.3
5

.3
5

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7
9

0
6

.3
5

.
5
3
9
7
0

.3
5

.
5
3
9
7
0

.3
5

.3
5

.3
5

.3
5

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7

0
2

.3
5

.
5
3
9
7
1

.3
5

.1

.
5
10

.6727845

3
9
7
0
4

.3
5

.3
5

.3
5

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7

0
7

.3
5

.
5
3
9
7
0

.3
5

.3
5

.3
5

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7
11

0
1

.3
5

.
5
3
9
7
0

.3
5

.
5
3
9
7
0

.3
5

.3
5

.3
5

.3
5

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7

.1

.
5
3
9
7

.3338894999
9999995

0
7

.3
5

.1

.
5
3
9
7
0

.3338894999
9999995

.3
5

.
5
12

3
9
7
0
9

.3
5

.3
5

.3
5

.6

.
5
3
9
7

.0033369999
999997

0
.
5
3
9
7

0
.
5
3
9
7

0
2

.3
5

.
5
3
9
7
0

.3
5

.8

.3
5

.2

.3
5

2
.
5
3
9
7

.67111599999
99996

.
5
3
9
7

.6677789999
999999

0
.
5
3
9
7
13

0
6

.3
5

.
5
3
9
7

minimum Q (min_Q) = 0
Nilai maksimum Q (max_Q) = 3.6728
Sebelum dilakukan preprocessing, maka data input dan target dilakukan transpose terlebih
dahulu (baris menjadi kolom, kolom menjadi baris)
Qn = (0.8*(Q-min_Q)/(max_Q-min_Q))+0.1
Q1 = 0
Qn = (0.8*(0-0)/( 180.9681-0))+0.1
Qn = 0.1

Berikut adalah hasil preprocessing data input yang disimpan pada matriks Qn
Qn=
Kolom 1 Sampai 16
0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

Kolom 17 Sampai 32
0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

Kolom 33 Sampai 48
0.1000
0.3909

0.1000
0.1000

0.1000
0.4636

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

Kolom 49 Sampai 64
0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

Kolom 65 Sampai 80

14

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000

0.1000

0.1000

0.9000

0.1000

0.1727

0.1000

0.5364

0.1000

0.1000

Kolom 81 Sampai 96
0.1000
0.1000

0.1000
0.1000

0.1000
0.6818

0.1000
0.2455

0.1000
0.1000

0.1727
0.1000

Tn = (0.8*(t-min_t)/(max_t-min_t))+0.1
min_T = 0
max_T = 3.6728
T1 = 0
Tn = (0.8*(0-0)/( 180.9681-0))+0.1
Tn = 0.1

Berikut adalah hasil preprocessing data input yang disimpan pada matriks tn
Tn =
Kolom 1 Sampai 16
0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.9000

0.1000

0.1727

0.1000

0.5364

0.1000

0.1000

Kolom 17 Sampai 32
0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

Kolom 33 Sampai 48
0.1000
0.3909

0.1000
0.1000

0.1000
0.4636

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

Kolom 49 Sampai 64
0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

Kolom 65 Sampai 80
0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

Kolom 81 Sampai 96
0.1000
0.1000

0.1000
0.1000

0.1000
0.6818

0.1000
0.2455

0.1000
0.1000

0.1727
0.1000
15

16

LAMPIRAN 3
Perhitungan Manual Data Ramal
Berikut adalah data forecasting yang disimpan di dalam database (sebelum dilakukan
normalisasi)
I
o

o
e
fi
s
i
e
n

ntensi
tas
(mm/j
am)

u
a
s
(
k
m

ebit (m /jam)

)
0

.
3
5

.
5
3
9
7
0

.
3
5

.
5
3
9
7
0

.
3
5

.
5
3
9
7
0

.
3
5

.
5
3
9
7
0

.
3
5

.
5
3
9
7
1

.
3
5

.
5
3
9
7
0

.
3
5

.
5
3
9
7
7

.
3
5

.
5
3
9
7

3.372265

.
5
3
9
7

.3472375

2
.
3
5

.5

0
0

.
3
5

.
3
5

0
.
5
3
9
7

0
.3

.
5
3
9
7
0

.
3
5

.2

.
5
3
9
7
0

1
.001668499999
9999

0
.667778999999
9999

.
3

.
5
2

3
9
7
0

.
3
5

.
3
5

.
3
5

0
.
5
3
9
7

4
.3

.
5
3
9
7
0

0
.
5
3
9
7

0
7

.
3
5

.1

.
5
3
9
7
0

.
3
5

.
3
5

.
3
5

1
4.35724849999
9999

0
.333889499999
99995

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7
3

0
1

.
3
5

.
5
3
9
7
0

.
3
5

.
5
3
9
7
0

.
3
5

.
3
5

.
3
5

.
3
5

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7

0
7

.
3
5

.
5
3
9
7
0

.
3

.
5
4

3
9
7
0

.
3
5

.
3
5

.
3
5

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7

0
2

.
3
5

.
5
3
9
7
0

.
3
5

.
3
5

.
3
5

0
.
5
3
9
7

0
.
5
3
9
7

0
.
5
3
9
7
5

0
6

.
3
5

.
5
3
9
7
0

.
3
5

.
5
3
9
7
0

.
3
5

.
3
5

.3

.
3
5

.1

0
.
5
3
9
7

0
.
5
3
9
7
0
,
5
3
9
7

1
.001668499999
9999

0
.333889499999
99995

Dari tabel diatas diketahui nilai minimum dari data yang ada di dalam tabel dataramal adalah
0, nilai maksimumnya adalah 23.3723
Min_u = 0
Max_u = 23.3723

Un = (0.8*(u-min_u)/(max_u-min_u))+0.1
Un (data ke-1 = 0)= (0.8*(0-0)/(23.3723-0)+0.1
Un (data ke-1 = 0) = 0.1

Dilakukan transpose pada dataramal, sehingga kolom menjadi baris, baris menjadi kolom
un =
Kolom 1 Sampai 16
6

0.1000
0.1343

0.1000
0.1229

0.1000
0.1000

0.1000
0.1000

0.1000
0.5914

0.1000

0.1000

0.9000

0.3857

0.1000

0.1000

0.1000

0.1000

0.1000

0.1343

0.1114

0.1000

Kolom 17 Sampai 32
0.1114
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

Kolom 33 Sampai 40
0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

Setelah dilakukan preprocessing, dilakukan postpocessing dengan tujuan untuk


mengembalikan kebentuk debit banjir, dengan rumus:
Min_y=0
Max_y=0.9

ys =
Kolom1 Sampai 16
0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1598

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

0.9000

0.1190

Kolom17 Sampai 32
0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

0.1000
0.1000

Kolom33 Sampai 40
0.1000

0.1000

0.1000

0.1000

0.1000

0.1000

un3=round((ys-0.1).*(max_y-min_y)-(0.8*min_y)/0.8)
un3 (data ke-1) = 0.1
un3 = round((0.1-0.1).*(0.9-0) - (0.8*0) / 0.8)
un3 = round ((0)*(0) - (0) / 0.8) = 0

sehingga un3 setelah dilakukan denormalisasi (postpocessing) menjadi:


un3 =
Kolom 1 Sampai 27
0
0

0
0

0
0

0
0

0
0

Kolom 28 Sampai 40
7

11

LAMPIRAN 4
Pengujian Arsitektur Jaringan
Learning rate

: 0.1

Epoch

: 76

Momentum

: 0.8

Goal

: 1e-10

Show iterasi

: 20

Maximum fail

:6

Gradien minimum

: 1e-10

Anda mungkin juga menyukai