LAMPIRAN Kode Program
1. Index.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Flood Prediction</title>
<link href="library/css/style.css" rel="stylesheet">
<link href="library/css/bootstrap.min.css" rel="stylesheet"> <link href="library/css/justified.css" rel="stylesheet"> </head>
<body class="twoColElsLtHdr"> <div id="container">
<div id="header">
<!-- end #header --></div> <div id="sidebar">
<ul class="nav nav-justified">
<li><a href="index.php">Home</a></li>
<li><a href="index.php?p=modul/home/air.php">Data Tinggi Permukaan Air</a></li> <li><a href="index.php?p=modul/home/form_show.php">Prediksi</a></li> <li><a href="modul/login/login.php">Login</a></li> </ul> </div> <div id="mainContent"> <?php if($_REQUEST['p']!="") { include $_REQUEST['p']; } else {
include "modul/home/content.php"; }
?> </div>
<!-- This clearing element should immediately follow the #mainContent div in order to force the #container div to contain all child floats --><br class="clearfloat" /> <div id="footer" align="center" style="color:#000000">
Copyright@Reza Elfandra Srg (091402098)<br /> Teknologi Informasi Universitas Sumatera Utara </div>
<!-- end #footer --></div> <!-- end #container --></div> </body>
2. form_show
<?php
include "koneksi/koneksi.php";
$s=mysql_query("select * from parameter", $koneksi) or die (mysql_error); $r=mysql_fetch_array($s);
?>
<script language="javascript" src="library/js/cal2.js"></script> <script language="javascript" src="library/js/cal_conf2.js"></script>
<script type="text/javascript" src="library/js/jquery-1.2.3.min.js"></script> <script type="text/javascript">
$(document).ready(function() { $().ajaxStart(function() {
$('#hasil_prediksi').hide(); }).ajaxStop(function() {
$('#hasil_prediksi').fadeIn('slow'); });
$('#myForm').submit(function() {
$("#hasil_prediksi").html('<img src="image/ajax.gif">'); var thres = $("#thres").val();
var error1 = $("#error1").val(); var rate1 = $("#rate1").val(); var rate2 = $("#rate2").val(); var tanggal = $("#tanggal").val(); var tanggal1 = $("#tanggal1").val();
$.ajax({
type: 'POST',
url: $(this).attr('action'), data:
'thres='+thres+'&error1='+error1+'&rate1='+rate1+'&rate2='+rate2+'&tanggal='+tangga l+'&tanggal1='+tanggal1,
success: function(data) { $("#hasil_prediksi").html(''); alert('Berhasil');
document.location.href='index.php?p=modul/home/testing/show.php'; }
}); }); });
</script>
<h1>Prediksi</h1>
<form id="myForm" method="post"
<table width="399" border="0"> <tr>
<td width="135" height="49">Sensitive Threshold</td> <td width="5">:</td>
<td width="214"><input type="text" name="thres" value="<?php echo $r['thres']; ?>"></td>
</tr> <tr>
<td height="42">Error Threshold</td> <td>:</td>
<td><input type="text" name="error1" value="<?php echo $r['error1']; ?>"></td>
</tr> <tr>
<td height="43">Learning Rate 1</td> <td>:</td>
<td><input type="text" name="rate1" value="<?php echo $r['rate1']; ?>"></td> </tr>
<tr>
<td height="45">Learning Rate 2</td> <td>:</td>
<td><input type="text" name="rate2" value="<?php echo $r['rate2']; ?>"></td> </tr>
<tr>
<td height="45">Dari Tanggal</td> <td>:</td>
<td><input type="text" name="tanggal"><small><a
href="javascript:showCal('Calendar1')">Select Date</a></small></td> </tr>
<tr>
<td height="46">Sampai Tanggal</td> <td>:</td>
<td><input type="text" name="tanggal1"><small><a
href="javascript:showCal('Calendar2')">Select Date</a></small></td> </tr>
<tr>
<td height="45">Input Hari</td> <td>:</td>
<td><input type="text" name="hari" size="5"/> Hari</td> </tr> <iframe width=174 height=189 name="gToday:normal:agenda.js"
id="gToday:normal:agenda.js" src="ipopeng.htm" scrolling="no" frameborder="0" style="visibility:visible; z-index:999; position:absolute; top:-500px; left:-500px;"> </iframe>
<tr>
</tr> </table> </form>
<div id="loading" style="display:none" align="center"><img src="loader.gif" alt="loading" /></div>
<div id="hasil_prediksi" style="display:none" align="center"></div>
3. show.php
<script type="text/javascript" src="library/js/jquery.min.js"></script> <script>
!window.jQuery && document.write('<script src="library/js/jquery-1.4.3.min.js"><\/script>');
</script>
<script type="text/javascript" src="library/fancybox/jquery.mousewheel-3.0.4.pack.js"></script>
<script type="text/javascript" src="library/fancybox/jquery.fancybox-1.3.4.pack.js"></script>
<link rel="stylesheet" type="text/css" href="library/fancybox/jquery.fancybox-1.3.4.css" media="screen" />
<script type="text/javascript">
$(document).ready(function() { /*
* Examples - various */
$("#various1").fancybox({
'titlePosition' : 'inside', 'transitionIn' : 'none', 'transitionOut' : 'none' });
$("#various2").fancybox(); $("#various3").fancybox({
'width' : '85%',
'height' : '85%',
'autoScale' : false,
'transitionIn' : 'none', 'transitionOut' : 'none',
'type' : 'iframe'
});
$("#various4").fancybox({
'width' : '80%',
'height' : '80%',
'autoScale' : false,
'transitionIn' : 'none', 'transitionOut' : 'none',
'type' : 'iframe'
}); </script> <?php
set_time_limit(0); error_reporting(0);
include "koneksi/koneksi.php"; $waktu_mulai = microtime(true); $thres=$_REQUEST['thres']; $error1=$_REQUEST['error1']; $rate1=$_REQUEST['rate1']; $rate2=$_REQUEST['rate2']; $tanggal=$_REQUEST['tanggal']; $tanggal1=$_REQUEST['tanggal1']; $hari=$_REQUEST['hari'];
$t1 = explode("-", $tanggal); $dt1 = $t1[0].'-'.$t1[1].'-'.$t1[2]; $t2 = explode("-", $tanggal1); $dt2 = $t2[0].'-'.$t2[1].'-'.$t2[2];
$d = mysql_query("select min(tgl) as min_tanggal, adddate('$dt1', -1) as max_tanggal from air");
$d1 = mysql_fetch_array($d);
$tr1 = explode('-', $d1["min_tanggal"]); $dr1 = $tr1[0].'-'.$tr1[1].'-'.$tr1[2]; $tr2 = explode('-', $d1["max_tanggal"]); $dr2 = $tr2[0].'-'.$tr2[1].'-'.$tr2[2];
$qi=mysql_query("select * from air where tgl<='$dt1'"); $po=mysql_num_rows($qi);
$tu=mysql_query("select * from air where tgl>='$dt1' and tgl<='$dt2'"); $gt=mysql_num_rows($tu);
$tr=$gt/$po;
$_SESSION['reza']=$tr; if($tr >= 0.5)
{ ?>
<script language="javascript"> <!--
alert('Maaf, data tidak bisa ditampilkan. Data kurang dari 80%')
--></script> <?php
} else { ?>
<h1> Hasil Prediksi </h1>
Sensitive Threshold : <?php echo $thres; ?><br> Error Threshold : <?php echo $error1; ?><br> Learning Rate 1 : <?php echo $rate1; ?><br> Learning Rate 2 : <?php echo $rate2; ?> <br>
Tanggal Testing : <?php echo $dt1; ?> sampai <?php echo $dt2; ?><br> Jumlah Data Testing : <?php $r1=mysql_query("select * from air where tgl>='$tanggal' and tgl<='$tanggal1'"); $t1=mysql_num_rows($r1); echo $t1; ?> Data<br>
Input hari : <?php echo $hari; ?> Hari<br>
<?php $yt=mysql_query("select sum(actual) as acttotal, sum(ramal) as actramal from ramal");
$rq=mysql_fetch_array($yt); $sumactual=$rq[acttotal]; $sumramal=$rq[actramal]; $ut=($sumactual/$sumramal);
?> <?php
include "../koneksi.php"; error_reporting(0);
$d=mysql_query("select max(ukuran) as max_air, min(ukuran) as min_air from air"); while($d1 = mysql_fetch_array($d))
{
$maxmal = $d1["max_air"]; $minmal = $d1["min_air"]; }
$midmal = ($minmal + $maxmal)/2;
$t1 = explode("-", $tanggal); $dt1 = $t1[0].'-'.$t1[1].'-'.$t1[2]; $t2 = explode("-", $tanggal1); $dt2 = $t2[0].'-'.$t2[1].'-'.$t2[2];
$tr1 = explode('-', $d1["min_tanggal"]); $dr1 = $tr1[0].'-'.$tr1[1].'-'.$tr1[2];
$tr2 = explode('-', $d1["max_tanggal"]); $dr2 = $tr2[0].'-'.$tr2[1].'-'.$tr2[2];
//************************* TRAINING********************************// $i=0;
$q = mysql_query("select * from air where tgl>='".$d1["min_tanggal"]."' and tgl<='".$d1["max_tanggal"]."'");
$jml = mysql_num_rows($q);
while($q1 = mysql_fetch_array($q)) {
$ukur[$i] = $q1["ukuran"];
$tgl[$i] = $q1["tgl"];
$i++;
}; //normalisasi
for($i=0; $i<count($ukur); $i++) {
$nilmal[$i] = ((0.8 * ($ukur[$i] - $minmal))/($maxmal - $minmal))+0.1;
}
// Triangle Member Function for($i=0; $i<count($nilmal); $i++)
{
if($nilmal[$i] < 0)
$fuzzy[$i][0] = 0;
elseif($nilmal[$i] >= 0 and $nilmal[$i] < 0.5) $fuzzy[$i][0] = ($nilmal[$i] - 0) / (0.5 - 0); elseif($nilmal[$i] >= 0.5 and $nilmal[$i] < 1) $fuzzy[$i][0] = (1 - $nilmal[$i]) / (1 - 0.5);
else
$fuzzy[$i][0] = 0;
$fuzzy[$i][1] = $nilmal[$i];
$i=0; $rNode=0; $W1[$rNode]= $fuzzy[$i][0]; $W2[$rNode]= $fuzzy[$i][1]; $k=0; $t=0;
while($i<count($fuzzy) and $rNode < $jml ) {
$dis=0;
for($j=0; $j<=$rNode; $j++) {
$dis += (abs($fuzzy[$i][0] - $W1[$j])/2); }
// Distance
$Distance[$k][0] = $rNode; $Distance[$k][1] = $i;
$Distance[$k][2] = $dis/array_sum($W1);
$Distance[$k][3] = exp(-(pow($Distance[$k][2], 2))); // get max(A1) from rule node (rNode)
if($mxA1[$rNode][0] == '') {
$mxA1[$rNode][0] = $rNode;
$mxA1[$rNode][1] = $Distance[$k][3]; }
else {
if($mxA1[$rNode][1] < $Distance[$k][3]) {
$mxA1[$rNode][0] = $rNode;
$mxA1[$rNode][1] = $Distance[$k][3]; }
}
if($mxA1[$rNode][1] > $thres) {
// get A2 and Err
$A2 = $mxA1[$rNode][1] * $W2[$rNode]; $Err = abs($A2 - $fuzzy[$i][1]);
// cek max (A2) from rule node (rNode) if($mxA2[$rNode][0] == '')
{
$mxA2[$rNode][0] = $rNode; $mxA2[$rNode][1] = $A2; $mxA2[$rNode][2] = $Err; }
else {
$mxA2[$rNode][1] = $A2; $mxA2[$rNode][2] = $Err; }
}
if(($Err < $error1) or ($rNode == $i)) {
$hasil[$i][0] = $rNode; $hasil[$i][1] = $i;
$hasil[$i][2] = $fuzzy[$i][0]; $hasil[$i][3] = $fuzzy[$i][1]; $hasil[$i][4] = $A2;
$hasil[$i][5] = $Err;
$Dist = $fuzzy[$i][0] - $W1[$rNode];
$W1[$rNode] = $W1[$rNode] + ($rate1 * $Dist); $W2[$rNode] = $W2[$rNode] + ($rate2 * $Err * $mxA1[$rNode][1]);
$i++;
} else {
$rNode++;
$W1[$rNode] = $fuzzy[$i][0]; $W2[$rNode] = $fuzzy[$i][1]; }
} else {
$rNode++;
$W1[$rNode] = $fuzzy[$i][0]; $W2[$rNode] = $fuzzy[$i][1]; }
DAFTAR PUSTAKA
Amiruddin, A.A.2011.Prediksi kurs rupiah terhadap dollar Amerika mengunakan metode fuzzy time series.Program Studi Teknik Informatika Jurusan Matematika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Diponegoro.
Artina, N.2006.Penerapan analysis kebutuhan metode use case pada metode pengembangan terstruktur.STMIK MIDP Palembang.Jurnal Ilmiah GI MDP Volume 2 Nomor 3.
Budiani, N.2000.Data flow Diagram sebagai alat bantu desain sistem.Bagian Pemeliharaan sistem aplikasi Biro Pengembangan Aplikasi komputer.Badan Pelayanan Kemudahan Ekspor dan Pengolahan data lingkungan Departemen keuangan.
Chang, Pei-Chann.,Wang, Yen-Wen.,Liu, Chen-Hao.2007.The Development of a Weighted Evolving Fuzzy Neural Network for PCB sales Forecasting.Departement of industrial Engineering and Management.Yuan-Ze University.135 Yuan Dong Rd, Taoyuan 32026, Taiwan, ROC.
Chang, Pei-Chann., Fan, Chin-Yuan., Hsieh, Jih-Chang.2009.A Weighted Fuzzy Neural Network for Electricity Demand Forecasting.First Asia Conference on Intelegent Information and Database System.Taiwan.
Edwardus, M H T R., Dennisleo, C.2012.Perancangan Sistem Prediksi Kemungkinan Banjir di Daerah Jakarta Pusat dengan logika Fuzzy.Binus University.DKI Jakarta.
Herdinata, C.2010.Aplikasi Model Artificial Neural Network untuk stock forcasting di pasar modal Indonesia.Fakultas Ekonomi Jurusan International Bussines Management Universitas Ciputra Surabaya.
Im, I M.2011.Perancangan Program Aplikasi Peramalan banjir Kanal Barat Jakarta mengunakan Autoregresi Multivariant. Jurusan Matematika FST BINUS University.
Kasabov, N. 2007. Evolving Connectionist Systems. London: Springer.
Kusumadewi, S., Hartati, S.2010.Neuro fuzzy integritas sistem fuzzy & jaringan syaraf.penerbit graha ilmu edisi 2.
Kurniawan, H.2011.Analisis dan Perancangan sistem informasi penjualan pada CV. Alief Cipta Selaras (ACS) Yogyakarta.Sekolah tinggi manajemen informatika dan computer Amikom Yogyakarta.
Machairiyah.2007.Analysis Curah Hujan Untuk Pendugaan Debit Puncak dengan Metode Rasional pada DAS Percut Kabupaten Deli Serdang.Skripsi.Departemen Teknologi Pertanian Fakultas Pertanian Universitas Sumatera Utara.
Nasution, H.2012.Implementasi Logika Fuzzy pada sistem Kecerdasan Buatan.Program Studi Teknik Informatika Jurusan Teknik Elektro Fakultas Teknik Univeristas Tanjung Pura Pontianak.
Peracitra, D,S.2012.Analysis Tren Jangka Panjang Curah Hujan dan Debit Daerah Aliran Sungai Begawan Solo.Skripsi.Departemen Meteorologi dan Geofisika Fakultas Matematika dan Ilmu Pengetahuan Alam Institute Pertanian Bogor.
Teknik Sipil Fakultas teknik Sipil dan Perencanaan Universitas
Pembangunan Nasional “Veteran”. Jawan Timur.
Soemantri, L,S.Pd.M.Si.2008.Pemanfaatan Teknik Penginderaan Jauh untuk mengindentifikasi Kerentanan dan Resiko Banjir.Jurusan Pendidikan Geografi Vol 8 No.2.
Syafii & Edyan, N.2013.Studi Peramalan (Forecasting) kurva beban Harian listrik jangka pendek mengunakan metode Autoregressive Integrated Moving Average (ARIMA).Program Studi Teknik Elektro Fakultas Teknik Universitas Andalas.
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
Bab ini akan membahas analisis metode Weighted Evolving Fuzzy Neural Network pada sistem dan membahas tahap-tahap yang akan dilakukan dalam perancangan sistem yang akan dibangun
3.1Data yang akan digunakan
Data yang digunakan pada penelitian ini adalah data history Tinggi Permukaan Air pada Wilayah Daerah Aliran Sungai (DAS) Asam Kumbang Belawan kabupaten Deli Serdang yang bersumber dari Direktorat Jendral Sumber Daya Air Balai Wilayah Sungai Sumatera II mulai dari tanggal 21 Januari 2002 s.d 31 Desember 2012 seluruh data berjumlah 4018 data yang dirangkum pada Table 3.1
Tabel 3.1 Rangkuman Data Permukaan Air pada wilayah DAS Asam Kumbang
Belawan
No Tanggal Data Tinggi Permukaan Air
1 1 Januari 2002 0.42
2 2 Januari 2002 0.36
3 3 Januari 2002 0.56
4 4 Januari 2002 0.44
5 5 Januari 2002 0.39
6 6 Januari 2002 0.36
Tabel 3.1 Rangkuman Data Permukaan Air pada wilayah DAS Asam Kumbang
Belawan (lanjutan)
No Tanggal Tinggi Permukaan Air
8 8 Januari 2002 0.39
9 9 Januari 2002 0.38
10 10 Januari 2002 0.43
. . . . . . . . .
4015 28 Desember 2012 0.47
4016 29 Desember 2012 0.40
4017 30 Desember 2012 0.52
4018 31 Desember 2012 0.66
Untuk pemodelan data pada tabel 3.1 dalam bentuk grafik dapat dilihat pada gambar 3.1
Gambar 3.1 Grafik Tinggi Permukaan Air
3.2Metode Penelitian
Metode penelitian ini terdapat data training dan data testing dapat dilihat pada gambar 3.2 dan 3.3
0.00 0.50 1.00 1.50 2.00 2.50
2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
T in g g i P e rm u k a a n AI r tahun
tinggi permukaan air
Gambar 3.2 Flowchart data training
Pada gambar 3.2, cara kerja data Training yang akan dibangun yaitu :
1. Ambil data tinggi permukaan air sesuai dengan tanggal awal dan tanggal akhir yang ingin ditraining
Mulai
Ambil data Training Tinggi Permukaan air
Normalisasi data
Fungsi keanggotaan segitiga
Tentukan Nilai Bobot 1 dan Bobot 2
Data Training <= n
Tambah rule node baru Hitung Nilai fuzzy Distance function
Hitung Nilai Aktivasi
A max > Thres
Melakukan Propagasi terhadap nilai Aktivasi
Hitung besar Error
Err < error1
Ubah Nilai bobot 1 dan bobot 2
F
T
T
F
T
Data tinggi permukaan air
F
2. Melakukan Normalisasi data yang akan digunakan dan diubah pada rentang 0 ≤ x ≤ 1
y = 0.8(x - a) / (b - a)+0.1 (3.1) keterangan :
y : Nilai Normalisasi
x : Nilai data Tinggi Permukaan Air
a : Nilai Minimum dari data Tinggi Permukaan Air b : Nilai Maximum dari data Tinggi Permukaan Air
3. Menentukan nilai Fungsi Keanggotaan Segitiga ( Triangle Membership Function ) terhadapat data yang telah dinormalisasikan dengan persamaan (2.3)
4. Tentukan rule node pertama untuk data pertama dan mengisi nilai bobot 1 dan bobot 2
5. Hitung nilai Fuzzy Distance Function dengan persamaan (2.9)
6. Hitung nilai aktivasi dari hasil perhitungan Fuzzy Distance Function dengan persamaan (2.10)
7. Cari Nilai aktivasi tertinggi
8. Cek nilai Ai lebih besar dari Sensitive Threshold (sThr), jika tidak maka rule node
akan ditambah 1 dan kembali ke langkah 6
9. Lakukan propagasi terhadap nilai aktivasi dengan persamaan (2.11) 10.Hitung nilai besar Error dengan persamaan (2.12)
11.Cek Erri lebih kecil dari error Threshold (eThr) , jika Tidak maka rule node akan
ditambah 1 dan kembali ke langkah 6 12.Ubah bobot 1 dan bobot 2
Gambar 3.3 Flowchart data Testing
Pada gambar 3.3, cara kerja data Testing yang akan dibangun yaitu :
1. Input Nilai Parameter Sesnsitive Threshold (sThr), Error Threshold (eThr), Learning rate 1 (lr1), learning rate 2 (lr2), tanggal awal, tanggal Akhir dan Input N hari.
Mulai
Ambil data Testing Tinggi Permukaan air
Normalisasi data
Fungsi keanggotaan segitiga
Tentukan Nilai Bobot 1 dan Bobot 2
Data Testing <= n
Hitung Nilai fuzzy Distance function
Hitung Nilai Aktivasi Maksimum
rNodeTes < rNode F
T
Data tinggi permukaan air
Selesai Hitung MAPE
Hitung Nilai Denormalisasi
Nilai Data Testing
F
T
Input Parameter :Thres, error1, rate1, Rate 2, tglawal,
2. Ambil data tinggi permukaan air sesuai dengan tanggal awal dan tanggal akhir yang ingin ditesting
3. Melakukan Normalisasi data yang akan digunakan dan diubah pada rentang 0 ≤ x ≤ 1 dengan persamaan (2.17)
4. Menentukan nilai Fungsi Keanggotaan Segitiga ( Triangle Membership Function ) terhadapat data yang telah dinormalisasikan dengan persamaan (2.3)
5. Tentukan rule node pertama untuk data pertama dan mengisi nilai bobot 1 dan bobot 2
6. Hitung nilai Fuzzy Distance Function dengan persamaan (2.9)
7. Hitung nilai aktivasi dari hasil perhitungan Fuzzy Distance Function dengan persamaan (2.10)
8. Cari Nilai aktivasi tertinggi
9. Cek jika nilai rule node Testing lebih kecil dari rule node training, jika tidak maka kembali ke langkah 6.
10.Melakukan denormalisasi dari hasil data testing untuk menghasilkan nilai sebenarnya.
x = (y – 0.1) (b - a) + 0.8a / 0.8 (3.2)
keterangan :
x = nilai denormalisasi y = nilai hasil prediksi
b = nilai maximum dari data tinggi permukaan air a = nilai minimum dari data tinggi permukaan air
∑
x 100 % (3.3) Keterangan :
a = data aktual b = data prediksi n = banyak data testing
3.3 Perancangan sistem
Perancangan sistem di tahap ini akan dilakukan perancangan data Tinggi Permukaan Air yang akan diproses di dalam sistem dan juga dilakukan perancangan antarmuka sistem yang akan dibangun.
3.3.1 Use case diagram
Use case diagram adalah mengambarkan hubungan actor dengan satu atau lebih dan gambarannya mengunakan sebuah gambar anak panah, orang atau elips. Use case diagram ini mengambarkan penguna untuk memanfaatkan dari sebuah sistem yang akan dibangun sedangkan seorang administrator yang langsung berhubungan atua mengendalikan sebuah sistem. Use case diagram ini mempresentasikan proses atau kegunaan dari seorang aktor pada sebuah sistem yang akan dibangun. (Artina, 2006). Use case diagram dari sistem yang akan dibuat dapat dilhat pada Gambar 3.4
3.3.2 Use case specification
Use case specification merupakan perkembangan dari sebuah use case diagram dan diagram ini memberikan sebuah gambaran dimana pada diagram ini saling berinteraksi antar komponen fungsionalitas dalam model pada sebuah sistem yang akan dibangun. (wardani, et al, 2010) Use case spesifikasi untuk sistem yang akan dibangun dapat dilihat pada Tabel 3.2, Tabel 3.3, Tabel 3.4, Tabel 3.5, Tabel 3.6, dan, Tabel 3.7
Tabel 3.2 Use Case Data Tinggi Permukaan Air
Tipe Use Case Penjelasan
Nama Use Case Lihat data
Aktor Pengguna
Deskripsi Use case ini digunakan pengguna untuk melihat data Tinggi Permukaan Air Pre-Condiiton Semua pengguna dapat mengklik menu
ini
Character of Activation Eksekusi ini dapat dilakukan oleh siapapun
Basic Flow 1.Pengguna mengakses menu data
Tinggi Permukaan Air
2.Kemudian sistem akan memunculkan seluruh data Tinggi Permukaan Air 3.Jika pengguna melakukan pencarian
dapat mengisi Form Pencarian, lalu klik tombol cari
4.Kemudian sistem akan melakukan pencarian data berdasarkan form yang diisi untuk menentukan data tersebut ada atau tidak [H-1 : data Tinggi Permukaan Air tidak ada dalam
database]
Tabel 3.2 Use Case Data Tinggi Permukaan Air (lanjutan)
Tipe Use Case Penjelasan
dalam database, maka data tersebut akan ditampilkan
5.Use case ini akan selesai ketika sistem telah selesai menampilkan semua data Tinggi Permukaan Air
Alternative flow H-1 : data Tinggi Permukaan Air
tidak ada dalam databse
Sistem akan memberikan pesan bahwa data Tinggi Permukaan Air tidak ada dalam database
Post condition Pada use case ini pengguna melihat data tinggi permukaan air
Limitations -
Tabel 3.3 Use Case prediksi Banjir
Tipe Use Case Penjelasan
Nama Use Case Prediksi Banjir
Aktor Pengguna
Deskripsi Use case ini digunakan pengguna untuk melihat Prediksi Banjir dengan mengunakan data Tinggi Permukaan Air Pre-Condiiton Semua pengguna dapat mengklik menu ini Character of Activation Eksekusi ini dapat dilakukan oleh siapapun Basic Flow 1.Pengguna mengklik menu Prediksi
2.Sistem akan menampilkan halaman Prediksi
Tabel 3.3 Use Case prediksi Banjir (lanjutan)
Tipe Use Case Penjelasan
4.sudah tersedia
5.Kemudian klik tombol prediksi 6.Sistem akan memproses untuk 7.mendapatkan hasil prediksi banjir 8.Pengguna dapat melihat hasil prediksi banjir
9.Jika pengguna ingin melihat grafik maka pengguna dapat mengklik menu grafik prediksi
Use case ini akan selesai ketika sistem sudah menampilkan hasil prediksi banjir
Alternative flow -
Post condition Pada use case ini pengguna dapat melihat hasil data prediksi banjir
Limitations -
Tabel 3.4 Use Case tutorial penggunaan aplikasi
Tipe Use Case Penjelasan
Nama Use Case Tutorial Penggunaan Aplikasi
Aktor Pengguna
Deskripsi Use case ini digunakan pengguna untuk melihat cara penggunaan sistem prediksi ini
Pre-Condiiton Semua pengguna dapat mengklik menu ini
Character of Activation Eksekusi ini dapat dilakukan oleh siapapun
Basic Flow 1. Pengguna dapat mengklik menu
Tabel 3.4 Use Case tutorial penggunaan aplikasi (lanjutan)
Tipe Use Case Penjelasan
2.Sistem akan menampilakan halaman tutorial penggunaan aplikasi
3. Use case ini akan selesai ketika sistem menampilkan tutorial penggunaan aplikasi
Alternative flow -
Post condition Pada use case ini pengguna dapat melihat halaman tutorial penggunaan aplikasi
Limitations -
Tabel 3.5 Use Case profil Administrator
Tipe Use Case Penjelasan
Nama Use Case Profil
Aktor Administrator
Deskripsi Use case ini digunakan administrator untuk melihat dan mengubah profil Pre-Condiiton Administrator memiliki username dan
password ada dalam database untuk dapat login ke sistem ini
Character of Activation Eksekusi ini dapat dilakukan oleh administrator yang telah login
Basic Flow 1.Administrator mengklik menu profil 2.Kemudian sistem akan menampilkan halaman profil administrator
3.Administrator dapat mengubah profil yang sudah ada kemudian klik tombol simpan
Tabel 3.5 Use Case profil Administrator (lanjutan)
Tipe Use Case Penjelasan
Alternative flow -
Post condition Pada use case ini administrator dapat mengedit / mengubah data profil
Limitations -
Tabel 3.6 Use Case pengaturan data tinggi permukaan air
Tipe Use Case Penjelasan
Nama Use Case Pengaturan data tinggi permukaan air
Aktor Administrator
Deskripsi Use case ini digunakan administrator untuk mengatur data tinggi permukaan air Pre-Condiiton Administrator memiliki username dan password ada dalam database untuk dapat login ke sistem ini
Character of Activation Eksekusi ini dapat dilakukan oleh administrator yang telah login
Basic Flow 1.Administrator mengklik menu
pengaturan data tinggi permukaan air 2.Kemudian sistem akan menampilkan data tinggi permukaan air
3.Administrator akan menambah, mengedit dan menghapus data tinggi permukaan air [H-1: data tinggi permukaan air tidak ada dalam
database]
Tabel 3.6 Use Case pengaturan data tinggi permukaan air (lanjutan)
Tipe Use Case Penjelasan
Alternative flow H-1: data tinggi permukaan air tidak
ada dalam database
Sistem akan memberikan sebuah pesan bahwa data tidak ada dalam database Post condition Pada use case ini administrator dapat
menambah, mengedit dan menghapus data tinggi permukaan air
Limitations -
Tabel 3.7 Use Case pengaturan parameter
Tipe Use Case Penjelasan
Nama Use Case Pengaturan parameter
Aktor Administrator
Deskripsi Use case ini digunakan administrator untuk mengatur parameter
Pre-Condiiton Administrator memiliki username dan password ada dalam database untuk dapat login ke sistem ini
Character of Activation Eksekusi ini dapat dilakukan oleh administrator yang telah login
Basic Flow 1. Administrator mengklik menu
parameter
2.Administrator menambah parameter yang dapat digunakan dalam prediksi banjir
3.Kemudian klik simpan
Tabel 3.7 Use Case pengaturan parameter (lanjutan)
Tipe Use Case Penjelasan
Prediksi
Alternative flow -
Post condition Pada use case ini administrator dapat menambah, mengedit dan menghapus parameter
Limitations -
3.3.3 DFD (data flow diagram)
Diagram flow diagram adalah teknik pemodelan proses umum yang akan digunakan dalam sebuah proses pengembangan sistem metode terstruktur (Artina, 2006). Sistem yang mengambarkan sistem yang saling berghubungan dengan alur data yang baik. Representasi sebuah grafik mengambarkan sebuah komponen sistem diantaranya asal, tujuan, komponen-komponen dan penyimpanan data tersebut (budiani, 2000) DFD level 0 dari system yang akan dibuat dapat dilihat pada gambar 3.5
Gambar 3.5 DFD level 0
Sistem Prediksi Banjir
Pengguna Administrator
Data Tinggi Permukaan Air
Data Prediksi Banjir
Tutorial Penggunaan Aplikasi
Input Parameter Prediksi
Pencarian data Tinggi Permukaan Air
Informasi Data Tinggi Permukaan Air Input Parameter Prediksi
Profil Administrator Login
Informasi Data Tinggi Permukaan Air
Informasi Data Parameter Prediksi
DFD (Diagram Flow Diagram) level 0 mengambarkan sebuah sistem yang akan dibangun untuk berinteraksi dengan sistem yang satu maupun dengan sisten yang lain. Pada DFD level 0 memiliki 2 aktor yang memiliki fungsi yang berbeda, pengguna memiliki sebuha aktivitas input seperti : pencarian data tinggi permukaan air danparameter metode WEFuNN sedangkan Output seperti : data tinggi permukaan air, data Prediksi Tinggi permukaan air dan informasi tutorial penggunaan aplikasi. Aktor administrator memiliki aktivitas input seperti : input data tinggi permukaan air, input parameter metode WEFuNN, profil administrator dan login sedangkan Output seperti : informasi data Tinggi permukaan air, informasi parameter metode WEFuNN dan informasi Profil. Detail proses yang terdapat pada DFD level 0 dapat dilihat pada gambar 3.6
Gambar 3.6 DFD level 1 Pengguna 1.0 Data Tinggi Permukaan Air 2.0 Data Prediksi Banjir 3.0 Lihat Tutorial Penggunaan Aplikasi 4.0 Pengaturan Data Tinggi Permukaan Air 5.0 Pengaturan Parameter 6.0 Pengaturan Profil Adminsitrator Data Prediksi Data Parameter
Data Tinggi Permukaan Air
Profil Administrator waktu waktu Data Tinggi Permukaan air Parameter prediksi Hasil Prediksi Parameter
Pilih menu Tutorial
Tampilan Tutorial Pengunaan
Aplikasi
Input data Prediksi
Tampil data Prediksi Tampil data Tinggi
Permukaan Air Data Tinggi Permukaan AIr Input Tinggi Permukaan AIr Parameter Input data Parameter Data Tinggi Permukaan AIr Parameter Tampil dsata Parameter Data Profil Tampilan Data Profil Input data profil
3.3.4Perancangan Menu Sistem
Perancangan menu sistem betujuan memberikan sebuah gambaran menu yang dapat di akses pada aplikasi yang akan dibangun . struktur menu pada sistem yang akan dibangun dapat dilihat pada gambar 3.7
Gambar 3.7 Struktur Menu Sistem
3.3.5Perancangan Tampilan Antarmuka
Perancangan tampilan antarmuka merupakan awal dari gambaran yang dimana akan dibangun sebuah aplikasi sistem.
3.3.5.1Rancangan Tampilan Halaman Home
Pada halaman Home ini akan menampilkan halaman pembuka aplikasi beserta Tutorial penggunaan aplikasi prediksi ini. Rancangan dapat dilihat pada gambar 3.8
Tampilan
Home
Prediksi Data Tinggi Permukaan air
Profil
Pengaturan Data Tinggi Permukaan Air
Pengaturan Data Parameter Login
Tambah Data
Edit Data
Hapus Data
Tambah Data
Edit Data
Gambar 3.8 Rancangan Halaman Home
Keterangan :
a. Pada bagian ini terdapat sidebar terdapat menu yang dapat diakses oleh pengguna yaitu antara lain : Menu Home, Menu data Tinggi Permukaan Air, Menu Peramalan, dan Menu Login.
b. Pada bagian ini berisi tutorial cara penggunaan sistem aplikasi prediksi ini.
3.3.5.2Rancangan Tampilan Halaman data Tinggi Permukaan Air
Pada bagian halaman ini, pengguna dapat melihat semua data tinggi permukaan air dan dapat melihat data tinggi permukaan air tertentu yang ingin dilihat. Rancangan dapat dilihat pada gambar 3.9
HEADER
FOOTER
HOME DATA T.AIR PREDIKSI LOGIN
KONTEN HOME a
Gambar 3.9 Rancangan halaman data Tinggi Permukaan Air
Keterangan :
a. Pada bagian ini, pengguna dapat melakukan Pencarian Tanggal dengan memasukan form yang tersedia , setelah itu, tekan tombol “Cari”, untuk
menghapus data yang diisi dapat ditekan tombol “Reset”.
b. Pada bagian ini menampilkan data tinggi permukaan air yang ada dalam database dalam bentuk tabel.
3.3.5.3Rancangan Tampilan halaman Prediksi
Pada halaman ini dapat dilakukan prediksi banjir dengan form yang tersedia, pengguna memasukan nilai parameter yang akan digunakan untuk melakukan prediksi. Rancangan dapat dilihat pada gambar 3.10
HEADER
FOOTER
HOME DATA T.AIR PREDIKSI LOGIN
DATA TINGGI PERMUKAAN AIR Search Tanggal
Tanggal Awal Tanggal Akhir CARI RESET a
b
Gambar 3.10 Rancangan halaman Prediksi
Keterangan :
a. Pada bagian ini, pengguna dapat memasukan input parameter yang tersedia dan input tanggal awal dan akhir kemudian untuk melihat hasil prediksi dapat
menklik “Submit”.
3.3.5.4Rancangan Tampilan Halaman Hasil Prediksi
Pada halaman ini menampilkan hasil prediksi yang telah input sesuai dengan form yang tersedia, rancangan dapat dilihat pada gambar 3.11
HEADER
FOOTER
HOME DATA T.AIR PREDIKSI LOGIN
Prediksi
Sensitive Threshold
Error Threshold
Learning Rate 2 Learning Rate 1
Submit
a
Tanggal Akhir Tanggal Awal
Gambar 3.11 Rancangan halaman Hasil Prediksi
Keterangan :
a. Pada bagian ini menampilkan antara lain: Parameter yang digunakan, tanggal awal dan tanggal akhir, nilai MAPE dll.
b. Pada bagian ini, pengguna dapat melihat grafik perbandingan antara data
aktual dan data Ramal dengan menklik “Lihat Grafik Aktual dan Ramal”.
c. Pada bagian ini, pengguna dapat melihat hasil prediksi sesuai dengan nilai input hari yang dimasukan.
d. Pada bagian ini hasil prediksi akan ditampilkan dalam bentuk tabel.
3.3.5.5Rancangan Tampilan Halaman Profil Administrator
Pada halaman ini menampikan data-data profil administrator yang sudah ada dalam database. Rancangan dapat dilihat pada gambar 3.12
HEADER
FOOTER
HOME DATA T.AIR PREDIKSI LOGIN
Hasil Prediksi
Sensitive Threshold : Error Threshold Learning Rate 1 Learning Rate 2
Tanggal Testing Jumlah Data Testing Waktu
Rule Node
Lihat Grafik Aktual dan Ramal : : :
: : : :
a
b
c
NO Tanggal Aktual Ramal
Lihat Hasil Prediksi
Gambar 3.12 Rancangan halaman Profil Administrator
Keterangan :
a. Menu sidebar yang terdapat menu untuk administrator gunakan.
b. Menu LogOut digunakan untuk keluar dari aplikasi halaman administrator. c. Pada bagian ini menampilkan data profil administrator, administrator dapat
mengubah data profil administrator, kemudian tekan tombol “Simpan”.
3.3.5.6 Rancangan Tampilan Halaman Pengaturan data tinggi permukaan air
Pada halaman ini, administrator dapat mengubah, menambah dan menhapus data yang tersedia. Rancangan dapat dilihat gambar 3.13
HEADER
FOOTER
PROFIL USER PENGATURAN DATA
T.AIR Pengaturan Parameter Logout
PROFIL USER
Nama
Alamat
Username
Password
Simpan a
Gambar 3.13 Rancangan halaman Pengaturan Data Tinggi Permukaan Air
Keterangan :
a. Pada bagian ini administrator dapat menambah data tinggi permukaan air. b. Pada bagian ini menampilkan data tinggi permukaan air yang ada dalam
database berbentuk tabel.
c. Pada tombol “Edit” ini digunakan untuk mengubah data tertentu.
d. Pada tombol “Hapus” digunakan untuk menghapus data yang tidak digunakan.
3.3.5.7 Rancangan Tampilan Halaman Pengaturan Parameter
Pada halaman ini, administrator mengatur parameter yang digunakan untuk melakukan prediksi. Rancangan dapat dilihat pada gambar 3.13
HEADER
FOOTER
PROFIL USER PENGATURAN DATA
T.AIR Pengaturan Parameter Logout
Pengaturan Data Tinggi Permukaan Air
Simpan Tanggal Data Tinggi Permukaan Air
NO Tanggal Aktual Value Edit Hapus a
b
Gambar 3.14 Rancangan halaman pengaturan parameter
Keterangan :
a. Pada bagian ini, administrator dapat mengisi nilai parameter yang digunakan untuk melaukan prediksi setelah itu mengklik “Simpan”.
HEADER
FOOTER
PROFIL USER PENGATURAN DATA
T.AIR Pengaturan Parameter Logout
Pengaturan Parameter
Sensitive Threshold
Error Threshold
Learning Rate 1
Learning Rate 2
Submit
BAB 4
IMPLEMENTASI DAN PENGUJIAN SISTEM
Pada bab ini akan dijelaskan tentang implementasi dari algoritma Weighted Evolving Fuzzy Neural Network pada sistem, sesuai dengan perancangan sistem yang telah dilakukan di Bab 3 serta melakukan pengujian sistem yang akan dibangun.
4.1 Implementasi sistem
Sesuai dengan tahap ini, metode Weighted Evolving Fuzzy Neural Network akan diimplementasikan ke aplikasi sistem, dengan mengunakan bahasa pemrograman php dan database MySql.
4.1.1Spesifikasi perangkat keras dan perangkat lunak
Spesifikasi perangkat keras dan perangkat lunak yang digunakan untuk membangun aplikasi sistem adalah sebagai berikut :
1. Processor : AMD C-60 APU with Radeon (tm) HD Graphic 1.00 GHZ 2. Kapasitas hardisk : 500 GB
3. Memori RAM yang digunakan 2.00 GB
4. Sistem operasi yang digunakan adalah Microsoft Windows 7 Ultimate 5. Web Server yang digunakan adalah XAMPP
4.1.2Implementasi Perancangan Antarmuka
Implementasi dari perancangan antarmuka yang telah dilakukan sebelunnya yaitu sebagai berikut :
a. Halaman Home
Halaman Home merupakan halaman yang pertama kali muncul ketika sebuah aplikasi sistem ini dijalankan. Pada halaman Home terdapat 3 Menu yaitu : Menu Data Tinggi Permukaan Air, Menu Prediksi, dan Menu Login. Pada halaman home merupakan penjelasan Tutorial cara penggunaan Aplikasi sistem prediksi banjir. Tampilan Halaman Home dapat dilihat pada gambar 4.1
[image:37.595.126.509.179.744.2]
Gambar 4.1 Halaman Home
b. Halaman Data Tinggi Permukaan Air
pengguna untuk mencari rentang waktu yang ingin dicari. Tampilan halaman Tinggi Permukaan Air dapat dilihat pada gambar 4.2
Gambar 4.2 Halaman Data Tinggi Permukaan Air
c. Halaman Prediksi
Gambar 4.3 Halaman Prediksi
d. Halaman Hasil Prediksi
Pada halaman ini merupakan halaman yang menampilkan hasil prediksi yang berisi nilai parameter dan rentang waktu yang digunakan untuk melakukan prediksi, pengguna juga dapat melihat grafik dengan menekan Link Menu
“Lihat Grafik Aktual dan Ramal”. Tampilan halaman hasil prediksi dapat
Gambar 4.4 Halaman hasil Prediksi
e. Halaman Profil Administrator
Gambar 4.5 Halaman Profil Administrator
f. Halaman Pengaturan Data Tinggi Permukaan Air
Gambar 4.6 Halaman Pengaturan data tinggi permukaan air
g. Halaman Pengaturan Parameter
Gambar 4.7 Halaman Pengaturan Parameter
4.1.3 Implementasi data
Tabel 4.1 Data Tinggi Permukaan Air
No Tanggal Tinggi Permukaan Air
1 1 Januari 2002 0.42
2 2 Januari 2002 0.36
3 3 Januari 2002 0.56
4 4 Januari 2002 0.44
5 5 Januari 2002 0.39
6 6 Januari 2002 0.36
. . .
. . .
. . .
4014 27 Desember 2012 0.41
4015 28 Desember 2012 0.47
4016 29 Desember 2012 0.40
4017 30 Desember 2012 0.52
4018 31 Desember 2012 0.66
4.2 Pengujian sistem
Pengujian sistem adalah Suatu Proses Eksekusi Sistem Perangkat Lunak Untuk dapat mengetahui apakah sistem Perangkat lunak yang telah dibangun sesuai dengan apa yang dibutuhkan. Pada tahap pengujian ini memiliki tujuan untuk mencari sebuah kesalahan dalam menjalankan sebuah sistem perangkat lunak. Untuk melakukan pengujian ini mengunakan metode Black Box Testing. Black Box testing adalah pengujian sistem dijalankan sesuai dengan modul pada sistem perangkat lunak yang dibangun. Kemudian dilakukan pengecekan terhadap sistem perangkat lunak yang telah dibangun sesuai dengan kebutuhan.(Kurniawan, 2011).
4.2.1 Rencana Pengujian sistem
Tabel 4.2 Rencana Pengujian Sistem
No Komponen sistem yang diuji Butir Uji
1 Login Tombol “Menu Login”
Tombol “Login”
Informasi jika terjadi kegagalan dalam melakukan login
2 Halaman Data Tinggi Permukaan Air
Tombol “Proses”
Tombol “Reset”
3 Halaman Prediksi Form Input Parameter
Tombol “Submit”
Tombol “Grafik Aktual dan Ramal”
4 Halaman Profil Adminstrator Tombol “Simpan”
4.2.2 Kasus dan hasil pengujian sistem
Adapun kasus berikut untuk menguji sistem yang akan dibangun dengan mengunakan metode Black Box testing berdasarkan tabel 4.1.untuk hasil pengujian Black Box Testing dapat dilihat pada tabel 4.3, tabel 4.4, tabel 4.5, tabel 4.6, tabel 4.7, tabel 4.8 dan tabel 4.9
Tabel 4.3 Hasil Pengujian Login
No Skenario Uji Hasil yang diharapkan Hasil
pengujian
1 Masukan
username dan Password yang benar
Ketika Tombol Login di klik maka sistem akan melakukan pengecekan, jika benar maka dapat langsung masuk ke halaman administrator
Tabel 4.3 Hasil Pengujian Login (lanjutan)
No Skenario Uji Hasil yang diharapkan Hasil
pengujian
2 Masukan
username dan password yang salah
Ketika tombol login di klik maka sistem akan melakukan pengecekan jika salah, sistem akan memberikan pesan kesalahan
Berhasil
3 Logout Ketika tombol logout diklik maka administrator keluar dari sistem
Berhasil
Tabel 4.4 Hasil Pengujian halaman Data Tinggi Permukaan Air
No Skenario Uji Hasil yang diharapkan Hasil
pengujian
1 Pengguna memasukan rentang waktu yang ingin dicari kemudian
mengklik
“Proses”
Ketika mengklik Tombol
“proses” maka akan muncul rentang waktu yang dicari oleh pengguna
Berhasil
2 Pengguna
mengklik tombol
“Reset”
Ketika Pengguna mengklik
tombol “Reset” maka form yang tersedia akan terhapus
Tabel 4.5 Hasil Pengujian halaman Prediksi
No Skenario Uji Hasil yang diharapkan Hasil
pengujian
1 Pengguna
mengklik menu prediksi
Ketika pengguna mengklik menu Prediksi maka sistem akan menampilkan form yang tersedia dengan parameter yang sudah diberi nilai dan dengan rentang waktu yang ingin melakukan prediksi
Berhasil
2 Pengguna
menganti nilai parameter
Pengguna dapat menganti nilai parameter yang ada terdapat di form
Berhasil
3 Pengguna
mengklik tombol
“Show”
Ketika pengguna mengklik
tombol “show” maka sistem akan mengalami pemrosesan sesuai dengan nilai parameter dan rentang waktu yang dimasukan
Berhasil
Tabel 4.6 Hasil Pengujian halaman Hasil Prediksi
No Skenario Uji Hasil yang diharapkan Hasil
pengujian
1 Tabel Hasil prediksi
Sistem akan menampilkan hasil prediksi
Berhasil
2 Pengguna
mengklik tombol
“lihat grafik aktual dan
ramal”
Untuk melihat hasil prediksi, pengguna dapat melihat melalui grafik dan pengguna dapat
mengklik tombol “Lihat grafik aktual dan ramal”
Tabel 4.7 Hasil Pengujian halaman Profil Adminstrator
No Skenario Uji Hasil yang diharapkan Hasil
pengujian
1 Administrator memasukan profil sesuai dengan form yang tersedia kemudian
mengklik tombol
“Simpan”
Ketika administrator mengklik
tombol “Simpan” maka sistem akan memberika pesan bahwa data tersebut masuk ke dalam database
Berhasil
Tabel 4.8 Hasil Pengujian halaman Pengaturan data tinggi permukaan air
No Skenario Uji Hasil yang diharapkan Hasil
pengujian
1 Administrator dapat mengisi form tambah data yang telah tersedia
kemudian
mengklik tombol
“Simpan”
Ketika administrator mengklik
tombol “Simpan” maka sistem akan memberikan pesan data telah masuk ke dalam database dan menampilkan data tersebut ke sistem
Berhasil
2 Administrator dapat mengubah data kemudian mengklik tombol
“Edit”
Ketika administrator mengklik
tombol “Edit” maka sistem akan memunculkan data yang ingin diubah kemudian mengklik
tombol “Simpan”
Berhasil
3 Administrator dapat menghapus data kemudian
Ketika administrator mengklik
tombol “Hapus” maka sistem langsung menghapus data yang
[image:48.595.130.511.387.759.2]Tabel 4.8 Hasil Pengujian halaman Pengaturan data tinggi permukaan air
(lanjutan)
No Skenario Uji Hasil yang diharapkan Hasil
pengujian
mengklik tombol
“Hapus”
tidak dipakai
Tabel 4.9 Hasil Pengujian halaman Pengaturan parameter
No Skenario Uji Hasil yang diharapkan Hasil
pengujian
1 Administrator dapat memasukan nilai parameter kemudian
mengklik tombol
“Simpan”
Ketika administrator mengklik
tombol “Simpan” maka nilai parameter akan masuk ke dalam database
Berhasil
4.2.3 Pengujian kinerja sistem
Di dalam pengujian kinerja sistem ini terdapat 15 data Tinggi Permukaan Air yang dirangkum pada tabel 4.10
Tabel 4.10 Tabel data Tinggi Permukaan Air
No Tanggal Data Aktual
1 01 Januari 2002 0.42
2 02 Januari 2002 0.36
3 03 Januari 2002 0.56
4 04 Januari 2002 0.44
5 05 Januari 2002 0.39
Tabel 4.10 Tabel data Tinggi Permukaan Air (lanjutan)
No Tanggal Data Aktual
7 07 Januari 2002 0.35
8 08 Januari 2002 0.39
9 09 Januari 2002 0.38
10 10 Januari 2002 0.43
11 11 Januari 2002 0.46
12 12 Januari 2002 0.40
13 13 Januari 2002 0.56
14 14 Januari 2002 0.41
15 15 Januari 2002 0.73
Langkah berikut dilakukan perhitungan manual pada metode Weighted Evolving Fuzzy Neural Networks untuk data pada Tabel 4.9 sebagai berikut:
1. Menentukan nilai parameter WEFuNN yaitu: Sensitive threshold, Error threshold, Learning rate 1, dan Learning rate 2 Nilai parameter yang digunakan adalah Sensitive threshold = 0,09, Error threshlod = 0,01, Learning rate 1 = 0,01, Learning rate 2 = 0,01.
[image:50.595.124.509.103.316.2]2. Berdasarkan pada tabel 4.9 maka dilakukan normalisasi data Tinggi Permukaan Air pada Tabel 4.9 Maka didapatkan nilai normalisasi yang dapat dilihat pada Tabel 4.10.
Tabel 4.11 Tabel data nilai Normalisasi
No Tanggal Data Normalisasi
1 01 Januari 2002 0.42 0.24737
2 02 Januari 2002 0.36 0.12105
3 03 Januari 2002 0.56 0.54211
4 04 Januari 2002 0.44 0.28947
Tabel 4.11 Tabel data nilai Normalisasi (lanjutan)
No Tanggal Data Normalisasi
6 06 Januari 2002 0.36 0.12105
7 07 Januari 2002 0.35 0.1
8 08 Januari 2002 0.39 0.18421
9 09 Januari 2002 0.38 0.16316
10 10 Januari 2002 0.43 0.26842
11 11 Januari 2002 0.46 0.33157
12 12 Januari 2002 0.40 0.20526
13 13 Januari 2002 0.56 0.54211
14 14 Januari 2002 0.41 0.22631
15 15 Januari 2002 0.73 0.9
3. Setelah data yang sudah dinormalisasikan pada tabel 4.11 maka selanjutnya Menentukan nilai membership function dengan mengunakan triangular membership function Dari data Tinggi Permkaan Air pada Tabel 4.10. Hasil dari penentuan nilai membership function dan target dari data yang telah dinormalisasi dapat dilihat pada Tabel 4.12
Tabel 4.12 Tabel data nilai Membership Function Triangle
No Tanggal Nilai Normalisasi Fuzzy Input
1 01 Januari 2002 0.24737 0.49474 2 02 Januari 2002 0.12105 0.24211 3 03 Januari 2002 0.54211 0.91579 4 04 Januari 2002 0.28947 0.57898 5 05 Januari 2002 0.18421 0.36842 6 06 Januari 2002 0.12105 0.24211
7 07 Januari 2002 0.1 0.2
Tabel 4.12 Tabel data nilai Membership Function Triangle (lanjutan)
No Tanggal Nilai Normalisasi Fuzzy Input
11 11 Januari 2002 0.33157 0.66316 12 12 Januari 2002 0.20526 0.41052 13 13 Januari 2002 0.54211 0.91579 14 14 Januari 2002 0.22631 0.45263
15 15 Januari 2002 0.9 0.2
4. Untuk nilai inisialisasi bobot W1, W2 dan Rule Node dari hasil tabel 4.12 yaitu W1 = 0.49474, W2=0.24737 dan Rule Node = 1.
5. Langkah selanjutnya melakukan proses training terhadap data yang ada
6. Untuk melakukan hasil prediksi mengunakan metode Weighted Evolving Fuzzy Neural Network maka dapat dilihat pada tabel 4.13
Tabel 4.13 Tabel data nilai target dan hasil prediksi
No Tanggal Target Hasil Prediksi
1 01 Januari 2002 0.24737 0.24737
2 02 Januari 2002 0.12105 0.11754
3 03 Januari 2002 0.54211 0.48578
4 04 Januari 2002 0.28947 0.28125
5 05 Januari 2002 0.18421 0.17738
6 06 Januari 2002 0.12105 0.11403
7 07 Januari 2002 0.1 0.09297
8 08 Januari 2002 0.18421 0.17759
9 09 Januari 2002 0.16315 0.15761
10 10 Januari 2002 0.26842 0.25499
11 11 Januari 2002 0.33158 0.30484
12 12 Januari 2002 0.20526 0.19920
13 13 Januari 2002 0.54211 0.44256
14 14 Januari 2002 0.45263 0.22634
[image:52.595.133.501.433.772.2]7. Setelah didapat hasil prediksi maka selanjutnya dilakukan denormalisasi hasil prediksi karena hasil prediksi yang berada pada tabel 4.13 belum menjadi nilai yang sebenarnya. Maka dapat dapat dilihat pada tabel 4.14 berikut
Tabel 4.14 Tabel data nilai denormalisasi
No Tanggal Target Hasil Prediksi
1 01 Januari 2002 0.42 0.42
2 02 Januari 2002 0.36 0.35
3 03 Januari 2002 0.56 0.53
4 04 Januari 2002 0.44 0.43
5 05 Januari 2002 0.39 0.38
6 06 Januari 2002 0.36 0.35
7 07 Januari 2002 0.35 0.34
8 08 Januari 2002 0.39 0.38
9 09 Januari 2002 0.38 0.37
10 10 Januari 2002 0.43 0.42
11 11 Januari 2002 0.46 0.44
12 12 Januari 2002 0.40 0.39
13 13 Januari 2002 0.56 0.51
14 14 Januari 2002 0.41 0.40
15 15 Januari 2002 0.73 0.69
Gambar 4.8 Grafik Hasil pelatihan
Pada Gambar 4.8 diperoleh tingkat error yang lebih besar pada pengujian kinerja sistem pada tanggal 13 Januari 2002. pergerakan data dari tanggal 1 Januari 2002 s.d. 12 Januari 2002 tidak mengalami perubahan yang besar. Akan Tetapi pada tanggal 13 Januari 2002 terjadi perubahan data yang sangat besar sehingga menghasilkan tingkat error yang besar dan dari tanggal 14 Januari 2002 s.d 15 Januari 2002 kembali mengalami perubahan data dimana perubahan data tidak mengalami perubahan besar. hasil prediksi pada tanggal 13 Januari 2002 diambil berdasarkan proses pembelajaran dari data-data sebelumnya.
4.2.4 Data Pelatihan
Data pelatihan yang digunakan adalah data dari tinggi permukaan air Asam Kumbang Belawan Kabupaten Deli Serdang dari tanggal 1 Januari 2002 sampai dengan tanggal 31 Januari 2010 dengan jumlah sebanyak 3288 data. Dapat dilihat hasil pelatihan maka dilakukan pelatihan dengan memasukan beberapa parameter yang berbeda dengan mengunakan data tinggi permukaan air pada tabel 4.15
[image:54.595.113.526.105.309.2]0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 1 /1 /2 0 0 2 1 /2 /2 0 0 2 1 /3 /2 0 0 2 1 /4 /2 0 0 2 1 /5 /2 0 0 2 1 /6 /2 0 0 2 1 /7 /2 0 0 2 1 /8 /2 0 0 2 1 /9 /2 0 0 2 1 /1 0 /2 0 0 2 1 /1 1 /2 0 0 2 1 /1 2 /2 0 0 2 1 /1 3 /2 0 0 2 1 /1 4 /2 0 0 2 1 /1 5 /2 0 0 2 d a ta t in g g i p e rm u ka a n a ir hari
Grafik Hasil Pelatihan
aktual Ramal
Tabel 4.15 Tabel parameter dan hasil pelatihan prediksi banjir
No Sensitive threshold
Error threshold
Learning rate 1
Learning rate 2
MAPE (%)
Waktu eksekusi
(detik)
Rule node
1 0.9 0.9 0.9 0.9
1.14
2.53
437
2 0.9 0.5 0.5 0.5
0.93
2.35
3403 0.9 0.1 0.1 0.1
0.48
4.66
9414 0.9 0.09 0.09 0.09
0.46
5.87
11215 0.9 0.08 0.08 0.08
0.43
8.81
15776 0.9 0.07 0.07 0.07
0.40
12.8
21157 0.9 0.06 0.06 0.06
0.37
21.2728 29528 0.9 0.05 0.05 0.05
0.33
21.5
32889 0.9 0.04 0.04 0.04
0.29
18.7
328810 0.9 0.03 0.03 0.03
0.27
14.8
328811 0.9 0.02 0.02 0.02
0.23
14.6
328812 0.9 0.01 0.01 0.01
0.18
13.3
328813 0.9 0.009 0.009 0.009
0.18
13.1
328814 0.9 0.001 0.001 0.001
0.084
13.4
328815 0.8 0.9 0.9 0.9
1.14
3.02
328716 0.8 0.5 0.5 0.5
0.93
2.09
33317 0.8 0.1 0.1 0.1
0.47
4.03
70518 0.8 0.09 0.09 0.09
0.45
5.05
90719 0.8 0.08 0.08 0.08
0.43
6.98
118420 0.8 0.07 0.07 0.07
0.40
10.2
165321 0.8 0.06 0.06 0.06
0.38
16.27
233022 0.8 0.05 0.05 0.05
0.32
21.2
328823 0.8 0.04 0.04 0.04
0.28
18.2
328824 0.8 0.03 0.03 0.03
0.25
16.4
328825 0.8 0.02 0.02 0.02
0.24
27.9
3287Tabel 4.15 Tabel parameter dan hasil pelatihan prediksi banjir (lanjutan)
No Sensitive threshold Error threshol d Learning rate 1 Learning rate 2 MAPE (%) Waktu eksekusi (detik) Rule node
27 0.8 0.009 0.009 0.009
0.21
28.6
328728 0.8 0.001 0.001 0.001
0.21
28.9
328729 0.7 0.9 0.9 0.9
1.15
2.47
43630 0.7 0.5 0.5 0.5
0.93
2.3618 33331 0.7 0.1 0.1 0.1
0.47
4.08
70532 0.7 0.09 0.09 0.09
0.45
5.04
90733 0.7 0.08 0.08 0.08
0.43
6.81
118434 0.7 0.07 0.07 0.07
0.40
10.27 165335 0.7 0.06 0.06 0.06
0.37
18.91
233036 0.7 0.05 0.05 0.05
0.32
21.73
328837 0.7 0.04 0.04 0.04
0.28
18.46
328838 0.7 0.03 0.03 0.03
0.29
25.65
328039 0.7 0.02 0.02 0.02
0.24
26.89
328440 0.7 0.01 0.01 0.01
0.22
27.58
328541 0.7 0.009 0.009 0.009
0.21
27.59
328742 0.7 0.001 0.001 0.001
0.21
28.83
328743 0.6 0.9 0.9 0.9
1.15
2.83
43644 0.6 0.5 0.5 0.5
0.93
2.09
33345 0.6 0.1 0.1 0.1
0.47
3.84
70546 0.6 0.09 0.09 0.09
0.46
5.10
90747 0.6 0.08 0.08 0.08
0.43
6.80
118448 0.6 0.07 0.07 0.07
0.40
10.98
165349 0.6 0.06 0.06 0.06
0.38
16.50
233050 0.6 0.05 0.05 0.05
0.35
24.84
327751 0.6 0.04 0.04 0.04
0.32
31.1282 327852 0.6 0.03 0.03 0.03
0.29
26.14
328053 0.6 0.02 0.02 0.02
0.24
27.79
328454 0.6 0.01 0.01 0.01
0.22
27.32
328555 0.6 0.009 0.009 0.009
0.21
27.69
328756 0.6 0.001 0.001 0.001
0.21
27.54
328757 0.5 0.9 0.9 0.9
1.15
2.47
436Tabel 4.15 Tabel parameter dan hasil pelatihan prediksi banjir (lanjutan)
No Sensitive threshold
Error threshol
d
Learning rate 1
Learning rate 2
MAPE (%)
Waktu eksekusi
(detik)
Rule node
59 0.5 0.1 0.1 0.1
0.48
3.92
70560 0.5 0.09 0.09 0.09
0.46
5.00
90761 0.5 0.08 0.08 0.08
0.43
6.81
118462 0.5 0.07 0.07 0.07
0.40
10.25
165363 0.5 0.06 0.06 0.06
0.38
15.99
233064 0.5 0.05 0.05 0.05
0.35
24.64
327765 0.5 0.04 0.04 0.04
0.33
25.27
327866 0.5 0.03 0.03 0.03
0.29
25.95
328067 0.5 0.02 0.02 0.02
0.24
26.95
328468 0.5 0.01 0.01 0.01
0.22
27.71
328569 0.5 0.009 0.009 0.009
0.21
27.73
328770 0.5 0.001 0.001 0.001
0.21
29.46
328771 0.4 0.9 0.9 0.9
1.15
2.65
43672 0.4 0.5 0.5 0.5
0.93
2.23
33373 0.4 0.1 0.1 0.1
0.48
4.25
70574 0.4 0.09 0.09 0.09
0.46
5.44
90775 0.4 0.08 0.08 0.08
0.43
7.02
118476 0.4 0.07 0.07 0.07
0.40
10.72
165377 0.4 0.06 0.06 0.06
0.38
17.03
233078 0.4 0.05 0.05 0.05
0.35
25.01
327779 0.4 0.04 0.04 0.04
0.33
25.65
327880 0.4 0.03 0.03 0.03
0.29
26.37
328081 0.4 0.02 0.02 0.02
0.24
27.72
328482 0.4 0.01 0.01 0.01
0.22
28.63
328583 0.4 0.009 0.009 0.009
0.21
28.23
3287Tabel 4.15 Tabel parameter dan hasil pelatihan prediksi banjir (lanjutan)
No Sensitive threshol d Error threshold Learning rate 1 Learnin g rate 2
MAPE (%) Waktu eksekus i (detik) Rule node
85 0.3 0.9 0.9 0.9
1.15
2.56
43686 0.3 0.5 0.5 0.5
0.93
2.22
33387 0.3 0.1 0.1 0.1
0.48
4.09
70588 0.3 0.09 0.09 0.09
0.46
5.19
90789 0.3 0.08 0.08 0.08
0.43
7.37
118490 0.3 0.07 0.07 0.07
0.40
10.53
165391 0.3 0.06 0.06 0.06
0.38
17.02
233092 0.3 0.05 0.05 0.05
0.35
25.96
327793 0.3 0.04 0.04 0.04
0.33
26.98
327894 0.3 0.03 0.03 0.03
0.29
27.04
328095 0.3 0.02 0.02 0.02
0.24
27.32
328496 0.3 0.01 0.01 0.01
0.22
28.02
328597 0.3 0.009 0.009 0.009
0.21
28.17
328798 0.3 0.001 0.001 0.001
0.21
28.5
328799 0.2 0.9 0.9 0.9
1.15
2.59
436100 0.2 0.5 0.5 0.5
0.93
2.08
333101 0.2 0.1 0.1 0.1
0.48
3.91 705102 0.2 0.09 0.09 0.09
0.46
5.04
907103 0.2 0.08 0.08 0.08
0.43
6.96
1184104 0.2 0.07 0.07 0.07
0.40
10.37
1653105 0.2 0.06 0.06 0.06
0.38
16.17
2330106 0.2 0.05 0.05 0.05
0.35
27.18
3277107 0.2 0.04 0.04 0.04
0.33
25.36
3287108 0.2 0.03 0.03 0.03
0.29
26.26
3280109 0.2 0.02 0.02 0.02
0.24
28.72
3284110 0.2 0.01 0.01 0.01
0.22
27.97
3285111 0.2 0.009 0.009 0.009
0.21
28.13
3287112 0.2 0.001 0.001 0.001
0.21
28.82
3287113 0.1 0.9 0.9 0.9
1.15
2.73
436114 0.1 0.5 0.5 0.5
0.93
2.09
333115 0.1 0.1 0.1 0.1
0.47
4.05
705Tabel 4.15 Tabel parameter dan hasil pelatihan prediksi banjir (lanjutan)
No Sensitive threshold Error threshold Learning rate 1 Learning rate 2 MAPE (%) Waktu eksekusi (detik) Rule node
117 0.1 0.08 0.08 0.08
0.43
7.09
1184118 0.1 0.07 0.07 0.07
0.40
10.77
1653119 0.1 0.06 0.06 0.06
0.38
16.79
2330120 0.1 0.05 0.05 0.05
0.35
25.71
3277121 0.1 0.04 0.04 0.04
0.33
26.27
3278122 0.1 0.03 0.03 0.03
0.29
26.42
3280123 0.1 0.02 0.02 0.02
0.24
28.05
3284124 0.1 0.01 0.01 0.01
0.22
28.87
3285125 0.1 0.009 0.009 0.009
0.21
29.45
3287126 0.1 0.001 0.001 0.001
0.21
27.7382 3287
Dari hasil Pada perbandingan rule node dan error prediksi didapat dengan nilai error threshold, learning rate 1, dan learnig rate 2 yang sama dan sensitive threshold yang berbeda. Dapat dilihat grafik dari Grafik Pelatihan pada nilai Error dari gambar 4.9 berdasarkan tabel 4.15
Gambar 4.9 Grafik Pelatihan nilai error
Dapat dilihat pada Gambar 4.9, dilakukan kombinasi beberapa parameter yang digunakan untuk memprediksi dapat mempengaruhi besarnya error, semakin besar
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1 6 1 1 1 6 2 1 2 6 3 1 3 6 4 1 4 6 5 1 5 6 6 1 6 6 7 1 7 6 8 1 8 6 9 1 9 6 1 0 1 1 0 6 1 1 1 1 1 6 1 2 1 1 2 6 E rr or (% )
Data
nilai sensitive threshold maka nilai error yang diperoleh semakin kecil. Besarnya suatu nilai error dipengaruhi oleh banyaknya pergerakan jumlah data yang ada.
4.2.5 Data pengujian
untuk hasil pelatihan yang dilakukan dengan parameter yang berbeda-beda yang didapat, kemudian dilakukan tahap pengujian pada tinggi permukaan air dari tanggal 1 Januari 2011 sampai dengan tanggal 31 Desember 2012 sebesar 731 data. Pada nilai parameter sensitive threshold = 0.9, learning rate 1 =0.001, learning rate 2 = 0.001, dan error threshold = 0,001 menghasilkan nilai error terkecil pada proses pelatihan sebesar
0.084
% Dari hasil pengujian, diperoleh nilai error sebesar 0,2