Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

50

LAMPIRAN : Kode Program

1. Mengambil Data Dari Database

<?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);

2. Mengambil Nilai Maksimal dan Minimal Dari Rata-Rata Beban

$d=mysql_query("select max(rata) as max_data, min(rata) as


min_data from beban");
while($d1 = mysql_fetch_array($d))
{
$maxNormal = $d1["max_data"];
$minNormal = $d1["min_data"];
}
$midNormal = ($minNormal + $maxNormal)/2;

$i=0;
$q = mysql_query("select * from beban");
$jumlahTes = mysql_num_rows($q);

while($q1 = mysql_fetch_array($q))
{
$dataTes[$i] = $q1["rata"];
$tanggalTes[$i] = $q1["tgl"];
$i++;
};

Universitas Sumatera Utara


51

3. Normalisasi Data

for($i=0; $i<count($dataTes); $i++)


{
$nilNormal[$i]=((0.8*($dataTes[$i] - $minNormal))/($maxNormal
- $minNormal))+0.1;
}

4. Fuzzifikasi

for($i=0; $i<count($nilNormal); $i++)


{
if($nilNormal[$i] < 0)
$fuzzy[$i][0] = 0;
elseif($nilNormal[$i] >= 0 and $nilNormal[$i] < 0.5)
$fuzzy[$i][0] = ($nilNormal[$i] - 0) / (0.5 - 0);
elseif($nilNormal[$i] >= 0.5 and $nilNormal[$i] < 1)
$fuzzy[$i][0] = (1 - $nilNormal[$i]) / (1 - 0.5);
else
$fuzzy[$i][0] = 0;
$fuzzy[$i][1] = $nilNormal[$i];
}
$i=0;
$rn=0;
$W1[$rn] = $W1[0];
$W2[$rn] = $fuzzy[$i][1];

$k=0;
$l=0;
while($i < count($fuzzy))
{
$Dis=0;
for($j=0; $j<=$rn; $j++)
{
$Dis += (abs($fuzzy[$i][0] - $W1[$j])/2);
}
// Distance
$Distance[$k][0] = $rnTes;

Universitas Sumatera Utara


52

$Distance[$k][1] = $i;
$Distance[$k][2] = $Dis/array_sum($W1);// Distance D(rn)
// Activation A1(rn)
$Distance[$k][3] = exp(-(pow($Distance[$k][2], 2)));
// get max(A1) from rule node (rn)
$maxA1[$rn][0] = $rn;
$maxA1[$rn][1] = $Distance[$k][3];

$A2 = $maxA1[$rn][1] * $W2[$rn];


$Err = abs($A2 - $fuzzy[$i][1]);

$maxA2[$rn][0] = $rn;
$maxA2[$rn][1] = $A2;
$maxA2[$rn][2] = $Err;

$hasil[$i][0] = $rn;
$hasil[$i][1] = $i;
$hasil[$i][2] = $fuzzy[$i][0];
$hasil[$i][3] = $fuzzy[$i][1];
$hasil[$i][4] = $A2;
$hasil[$i][5] = $Err;

$i++;
$rn++;

if($rn > $rn)


{
$rn = 0;
unset($W1);
unset($W2);

$W1[$rn] = $W1[$rn];
$W2[$rn] = $fuzzy[$i][1];
}
else
{
$W1[$rn] = $W1[$rn];
$W2[$rn] = $fuzzy[$i][1];
}

Universitas Sumatera Utara


53

$k++;
};
$_SESSION["abc"] = rand(00000, 99999).date("d-m-y");
$TotalTarget=0;

//target merupakan hasil peramalan


for($i=0; $i<count($hasil); $i++)
{
$Target = (($hasil[$i][4] * ($maxNormal - $minNormal)) +
(0.9 * $minNormal) - (0.1 * $maxNormal))/0.9;

//Memasukan hasil peramalan kedalam database

mysql_query("insert into ramal(sess,actual, ramal, tgl)


values (
'$_SESSION[abc]','$dataTes[$i]','$Target','$tanggalTes[$i]')");
}
?>

Universitas Sumatera Utara

You might also like