Listing Program
1. Apriori
<?php
$time = microtime(); $time = explode(' ', $time); $time = $time[1] + $time[0]; $start = $time;
?>
<div class="workplace"> <div class="row-fluid"> <div class="span12"> <div class="head">
<div class="isw-grid"></div> <h1>Ekspor-Apriori</h1> <div class="clear"></div> </div>
<div class="block-fluid">
<?php
include"koneksi.php";
$delete1 = mysql_query("DELETE FROM kombinasi_gabung") or die (mysql_error());
$delete5 = mysql_query("DELETE FROM gabung_relasi") or die (mysql_error()); $delete6 = mysql_query("DELETE FROM hasil_confidence") or die (mysql_error());
$support = $_POST['support']; $confidence = $_POST['confidence']; $jum_transaksi = $_POST['jum_transaksi'];
• Proses pencarian C1
$sql_relasi = mysql_query("SELECT * FROM relasi ORDER BY id_relasi LIMIT $jum_transaksi");
$num_relasi = mysql_num_rows($sql_relasi);
$sql_komoditas = mysql_query("select * FROM komoditas")or die(mysql_error());
while($array_komoditas = mysql_fetch_array($sql_komoditas)){ ?>
<?php $count_ekspor = mysql_query("SELECT count(*) AS jum_komoditas FROM relasi where
id_komoditas='" . $array_komoditas['id_komoditas'] . "' ORDER BY id_relasi LIMIT $jum_transaksi") or die(mysql_error());
$array_count = mysql_fetch_array($count_ekspor);
$hasil_count_relasi = ($array_count['jum_komoditas'] / $num_relasi) * 100;
if($hasil_count_relasi >= $support){
$item_gabung = $array_komoditas['id_komoditas']; $count_gabung = $hasil_count_relasi;
$sql_cek_count = mysql_query("SELECT * FROM gabung_relasi WHERE item_gabung='$item_gabung' and count_gabung='$count_gabung'")
if(mysql_num_rows($sql_cek_count)){ echo '';
} else{
$insert_count = mysql_query("INSERT INTO gabung_relasi VALUES ('','$item_gabung', '$count_gabung','1')");
• Proses pencarian L1 <?php
$sql_negara = mysql_query("select * FROM negara")or die(mysql_error()); while($array_negara = mysql_fetch_array($sql_negara)){
?>
<?php $count_ekspor2 = mysql_query("SELECT count(*) AS jum_negara FROM relasi where
id_negara='" . $array_negara['id_negara'] . "' ORDER BY id_relasi LIMIT $jum_transaksi") or die(mysql_error());
$array_count2 = mysql_fetch_array($count_ekspor2);
$hasil_count_relasi2 = ($array_count2['jum_negara'] / $num_relasi) * 100;
if($hasil_count_relasi2 >= $support){
$count_gabung2 = $hasil_count_relasi2;
$sql_cek_count2 = mysql_query("SELECT * FROM gabung_relasi WHERE item_gabung='$item_gabung2' and count_gabung='$count_gabung2'
and item_kategori='2'") or die (mysql_error());
if(mysql_num_rows($sql_cek_count2)){ echo '';
} else{
$insert_count = mysql_query("INSERT INTO gabung_relasi VALUES ('','$item_gabung2', '$count_gabung2','2')");
} }
?><?php $i++; }
?>
• Proses Pencarian C2 <?php
$TRecord = mysql_query("SELECT * FROM gabung_relasi where item_kategori = '1' order by id_item asc ") or die(mysql_error());
$i=1; $j=1;
<?php
$id_kombinasi = $data['item_gabung']; ?></td>
<td><?php
$sql_negara_count = mysql_query("SELECT * FROM gabung_relasi where item_kategori = '2' order by id_item asc ") or die(mysql_error());
while($array_negara_count=mysql_fetch_array($sql_negara_count)){
$id_negara = $array_negara_count['item_gabung'];
$cek_insert_count = mysql_query("SELECT * FROM kombinasi_gabung WHERE id_komoditas='$id_kombinasi' and id_negara='$id_negara'");
if(mysql_num_rows($cek_insert_count)){ echo '';
} else {
$sql_insert_count = mysql_query("INSERT INTO kombinasi_gabung values ('$id_kombinasi', '$id_negara')") or die (mysql_error());
} } ?></td>
</tr> <?php $j++;
} ?>
<?php
$i=1; $j=1;
while($data=mysql_fetch_array($TRecord)){ ?>
<tr>
<td><?php $sql_nama_komoditas = mysql_query("SELECT * FROM komoditas where id_komoditas='" . $data['id_komoditas'] . "'");
$array_nama_komoditas = mysql_fetch_array($sql_nama_komoditas); ?></td>
<td><?php $sql_nama_negara = mysql_query("SELECT * FROM negara where id_negara='" . $data['id_negara'] . "'");
$array_nama_negara = mysql_fetch_array($sql_nama_negara); ?></td>
<td><?php
$sql_jumlah_relasi = mysql_query("SELECT * FROM relasi WHERE id_komoditas='" . $data['id_komoditas'] . "' and
id_negara='" . $data['id_negara'] . "' ORDER BY id_relasi LIMIT $jum_transaksi");
$num_jum_relasi = mysql_num_rows($sql_jumlah_relasi);
$id_komoditas2 = $array_nama_komoditas['id_komoditas']; $id_negara2 = $array_nama_negara['id_negara'];
if($num_jum_relasi >= $support){
$cek_hasil_count = mysql_query("SELECT * FROM hasil_kombinasi WHERE id_komoditas='$id_komoditas2' and id_negara='$id_negara2'
and hasil_count='$num_jum_relasi'") or die (mysql_error()); if(mysql_num_rows($cek_hasil_count)){
$sql_insert_count = mysql_query("INSERT INTO hasil_kombinasi values ('', '$id_komoditas2', '$id_negara2','$num_jum_relasi')") or die (mysql_error());
}
$TRecord = mysql_query("SELECT * FROM hasil_kombinasi order by id_komoditas asc ") or die(mysql_error());
$i=1; $j=1;
while($data=mysql_fetch_array($TRecord)){ ?>
<tr>
<td><?php $sql_nama_komoditas = mysql_query("SELECT * FROM komoditas where id_komoditas='" . $data['id_komoditas'] . "'");
$array_nama_komoditas = mysql_fetch_array($sql_nama_komoditas); ?></td>
<td><?php $sql_nama_negara = mysql_query("SELECT * FROM negara where id_negara='" . $data['id_negara'] . "'");
$array_nama_negara = mysql_fetch_array($sql_nama_negara); ?></td>
$id_komoditas3 = $array_nama_komoditas['id_komoditas']; $id_negara3 = $array_nama_negara['id_negara'];
$sql_jumlah_relasi = mysql_query("SELECT * FROM relasi WHERE id_komoditas='" . $data['id_komoditas'] . "' and
id_negara='" . $data['id_negara'] . "' ORDER BY id_relasi LIMIT $jum_transaksi");
$sql_jumlah_komoditas = mysql_query("SELECT * FROM relasi WHERE id_komoditas='" . $data['id_komoditas'] . "' ORDER BY id_relasi LIMIT $jum_transaksi");
$num_relasi3 = mysql_num_rows($sql_jumlah_komoditas);
$sql_jumlah_relasi2 = mysql_query("SELECT * FROM relasi ORDER BY id_relasi LIMIT $jum_transaksi ");
$num_relasi = mysql_num_rows($sql_jumlah_relasi2); $num_relasi2 = mysql_num_rows($sql_jumlah_relasi);
$num_jum_relasi = mysql_num_rows($sql_jumlah_relasi);
$hasil_num_relasi = ($num_relasi2 / $num_relasi3) * 100;
if($hasil_num_relasi >= $support){
$sql_cek_support = mysql_query("SELECT * FROM hasil_support WHERE id_komoditas='$id_komoditas3' and id_negara='$id_negara3' and
support='$hasil_num_relasi'") or die (mysql_error()); if(mysql_num_rows($sql_cek_support)){
$insert_support = mysql_query("INSERT INTO hasil_support VALUES
• Proses Pencarian L2 dengan nilai confidence
<?php
$TRecord = mysql_query("SELECT * FROM hasil_support order by id_hasil_asosiasi asc ") or die(mysql_error());
$i=1; $j=1;
while($data=mysql_fetch_array($TRecord)){ ?>
<tr>
<td><?php $sql_nama_komoditas = mysql_query("SELECT * FROM komoditas where id_komoditas='" . $data['id_komoditas'] . "'");
$array_nama_komoditas = mysql_fetch_array($sql_nama_komoditas); ?></td>
<td><?php $sql_nama_negara = mysql_query("SELECT * FROM negara where id_negara='" . $data['id_negara'] . "'");
$array_nama_negara = mysql_fetch_array($sql_nama_negara); ?></td>
<td><?php
$id_negara3 = $array_nama_negara['id_negara'];
$sql_kombinasi1 = mysql_query("SELECT * FROM relasi WHERE id_komoditas='$id_komoditas3' ORDER BY id_relasi LIMIT $jum_transaksi");
$array_kombinasi1 = mysql_num_rows($sql_kombinasi1);
$sql_kombinasi2 = mysql_query("SELECT * FROM relasi WHERE id_komoditas='$id_komoditas3' and id_negara='$id_negara3' ORDER BY id_relasi LIMIT $jum_transaksi");
$array_kombinasi2 = mysql_num_rows($sql_kombinasi2);
$hasil_confidence = ($array_kombinasi2 / $array_kombinasi1) * 100;
if($hasil_confidence >= $confidence){
$sql_confidence = mysql_query("SELECT * FROM hasil_confidence WHERE id_komoditas='$id_komoditas3' and id_negara='$id_negara3'
and hasil_confidence='$hasil_confidence'"); if(mysql_num_rows($sql_confidence)){ echo '';
} else {
$sql_insert_confidence = mysql_query("INSERT INTO hasil_confidence VALUES ('','$id_komoditas3','$id_negara3','$hasil_confidence')")
or die(mysql_error()); }
}
?> <?php $j++;
echo '<p><b>Minimum Support :</b>' . $_POST['support'] . '</p>';
echo '<p><b>Minimum Confidence :</b>' . $_POST['confidence'] . '</p>'; echo '<p><b>Jumlah Transaksi :</b>' . $_POST['jum_transaksi'] . '</p>';
?> <br>
<table cellpadding="0" cellspacing="0" width="100%" class="table" border="1"> <tr>
<th width="46">Nomor</th> <th width="424">Kesimpulan</th> <th width="235">Confidence</th> </tr>
<?php
$TRecord = mysql_query("SELECT * FROM hasil_confidence order by id_hasil_confidence asc ") or die(mysql_error());
$i=1; $j=1;
while($data=mysql_fetch_array($TRecord)){ ?>
<tr>
<td><?php echo $j; ?></td>
<td><?php $sql_nama_negara = mysql_query("SELECT * FROM negara where id_negara='" . $data['id_negara'] . "'");
$array_nama_negara = mysql_fetch_array($sql_nama_negara);
$sql_nama_komoditas = mysql_query("SELECT * FROM komoditas where id_komoditas='" . $data['id_komoditas'] . "'");
echo "Jika " . $array_nama_komoditas['nama_komoditas'] . " maka " . $array_nama_negara['nama_negara'];?></td>
<td><?php echo $data['hasil_confidence'];?></td>
$total_time = round(($finish - $start), 4);
echo "Lama Proses Filtering : " . $total_time." detik"; ?>
<div class="row-fluid"> <div class="span12">
<div class="block-fluid table-sorting"> <div class="clear"></div>
2. CT-Pro Ekspor
<?php
$time = microtime(); $time = explode(' ', $time); $time = $time[1] + $time[0]; $start = $time;
?>
<div class="workplace"> <div class="row-fluid"> <div class="span12"> <div class="head">
<div class="isw-grid"></div> <h1>Ekspor-CTPRO</h1> <div class="clear"></div> </div>
<div class="block-fluid"> <?php
if(isset($_POST['submit'])){ include"koneksi.php";
$delete1 = mysql_query("DELETE FROM gabung_ctpro")or die(mysql_error()); $delete2 = mysql_query("DELETE FROM frequent_komoditas")or
die(mysql_error());
$support = $_POST['support']
$confidence = $_POST['confidence']; $jum_transaksi = $_POST['jum_transaksi'];
• menghitung frekuensi item
$sql_relasi = mysql_query("SELECT * FROM relasi_impor ORDER BY id_relasi_impor ASC LIMIT $jum_transaksi");
$num_relasi = mysql_num_rows($sql_relasi);
$sql_komoditas = mysql_query("select * FROM komoditas")or die(mysql_error());
while($array_komoditas = mysql_fetch_array($sql_komoditas)){ ?>
<?php $count_ekspor = mysql_query("SELECT count(*) AS jum_komoditas FROM relasi_impor where
id_komoditas='" . $array_komoditas['id_komoditas'] . "' ORDER BY id_relasi_impor ASC LIMIT $jum_transaksi") ;
$array_count = mysql_fetch_array($count_ekspor);
$count_ekspor = mysql_query("SELECT count(*) AS jum_komoditas FROM relasi_impor where
id_komoditas='" . $array_komoditas['id_komoditas'] . "'") or die(mysql_error()); $array_count = mysql_fetch_array($count_ekspor);
$hasil_hitung = ($array_count['jum_komoditas'] / $num_relasi) * 100; $item_gabung = $array_komoditas['id_komoditas'];
$count_gabung = $array_count['jum_komoditas'];
if($hasil_hitung >= $support){
$count_gabung = $hasil_hitung;
$sql_cek_count = mysql_query("SELECT * FROM gabung_ctpro WHERE item_gabung='$item_gabung' and count_gabung='$count_gabung'")
or die (mysql_error());
if(mysql_num_rows($sql_cek_count)){ echo '';
} else{
$insert_count = mysql_query("INSERT INTO gabung_ctpro VALUES ('','$item_gabung', '$count_gabung','1')");
} }
$i++; } ?>
• Proses pembuatan tree <?php
$sql_negara = mysql_query("select * FROM negara")or die(mysql_error()); while($array_negara = mysql_fetch_array($sql_negara)){
$count_ekspor2 = mysql_query("SELECT count(*) AS jum_negara FROM relasi_impor where
id_negara='" . $array_negara['id_negara'] . "' ORDER BY id_relasi_impor ASC LIMIT $jum_transaksi") or die(mysql_error());
$array_count2 = mysql_fetch_array($count_ekspor2);
if($hasil_hitung_negara >= $support){ $item_gabung = $array_negara['id_negara']; $count_gabung = $hasil_hitung_negara;
$sql_cek_count = mysql_query("SELECT * FROM gabung_ctpro WHERE item_gabung='$item_gabung' and count_gabung='$hasil_hitung_negara'") or die (mysql_error());
if(mysql_num_rows($sql_cek_count)){ echo '';
} else{
$insert_count = mysql_query("INSERT INTO gabung_ctpro VALUES ('','$item_gabung', '$count_gabung','2')");
} } $i++; } ?>
<?php
$sql_komoditas = mysql_query("select * FROM gabung_ctpro a, komoditas b WHERE a.item_gabung=b.id_komoditas
and a.item_kategori='1'")or die(mysql_error()); while($array_komoditas = mysql_fetch_array($sql_komoditas)){
$sql_cek_ada1 = mysql_query("SELECT * FROM relasi_impor WHERE
$num_cek_ada1 = mysql_num_rows($sql_cek_ada1);
$id_frequent_komoditas = mysql_fetch_array($sql_cek_ada1); $id_komoditas = $array_komoditas['id_komoditas'];
$id_relasi1 = $id_frequent_komoditas['kode_relasi'];
if($num_cek_ada1 >= $support){
$cek_insert_komoditas = mysql_query("SELECT * FROM frequent_komoditas WHERE id_komoditas='$id_komoditas' and kode_relasi='$id_relasi1'")
or die (mysql_error());
if(mysql_num_rows($cek_insert_komoditas)){ echo '';
} else {
$sql_insert_komoditas = mysql_query("INSERT INTO frequent_komoditas VALUES ('', '$id_relasi1', '$id_ko moditas')");
} }
}
$sql_negara = mysql_query("select a.*,b.* FROM gabung_ctpro a, negara b WHERE a.item_gabung=b.id_negara
and a.item_kategori='2'")or die(mysql_error()); while($array_negara = mysql_fetch_array($sql_negara)){
$sql_cek_ada2 = mysql_query("SELECT * FROM relasi_impor WHERE
id_negara='" . $array_negara['item_gabung'] . "' ORDER BY id_relasi_impor ASC LIMIT $jum_transaksi") ;
$id_frequent_negara = mysql_fetch_array($sql_cek_ada2); $id_negara = $array_negara['id_negara'];
$id_relasi2 = $id_frequent_negara['kode_relasi']; if($num_cek_ada2 >= $support){
$cek_insert_negara = mysql_query("SELECT * FROM frequent_negara WHERE id_negara='$id_negara' and kode_relasi='$id_relasi2'")
or die (mysql_error());
if(mysql_num_rows($cek_insert_negara)){ echo '';
} else {
$sql_insert_negara= mysql_query("INSERT INTO frequent_negara VALUES ('','$id_relasi2', '$id_negara')");
} }
}
$sql_komoditas = mysql_query("select * FROM frequent_komoditas")or die(mysql_error());
while($array_komoditas = mysql_fetch_array($sql_komoditas)){
$sql_relasi = mysql_query("SELECT * FROM frequent_negara");
$sql_num_komoditas = mysql_query("SELECT * FROM relasi_impor WHERE id_komoditas='" . $array_komoditas['id_komoditas'] . "' ORDER BY id_relasi_impor ASC LIMIT $jum_transaksi");
$num_ko moditas = mysql_num_rows($sql_num_komoditas);
$array_num_komoditas = mysql_fetch_array($sql_num_komoditas);
$sql_num_komoditas2 = mysql_query("SELECT * FROM relasi_impor WHERE id_komoditas='" . $array_komoditas['id_komoditas'] . "'
and id_negara='" . $array_relasi['id_negara'] . "' ORDER BY id_relasi_impor ASC LIMIT $jum_transaksi");
$num_komoditas2 = mysql_num_rows($sql_num_komoditas2);
if($num_komoditas2 >= $support){
$sql_cek_kombinasi = mysql_query("SELECT * FROM kombinasi_ctpro WHERE id_komoditas='$array_komoditas[id_komoditas]'
and id_negara = '$array_relasi[id_negara]'");
if(mysql_num_rows($sql_cek_kombinasi)){
echo ''; } else {
$insert_cek_kombinasi = mysql_query("INSERT kombinasi_ctpro VALUES
} }
} }
• Proses menghitung confidence
$sql_kombinasi_ctpro = mysql_query("SELECT * FROM kombinasi_ctpro"); while($array_kombinasi_ctpro = mysql_fetch_array($sql_kombinasi_ctpro)){
$sql_num_komoditas = mysql_query("SELECT * FROM relasi_impor WHERE id_komoditas='" . $array_kombinasi_ctpro['id_komoditas'] . "' ORDER BY id_relasi_impor ASC LIMIT $jum_transaksi");
$num_komoditas = mysql_num_rows($sql_num_komoditas);
$sql_num_komoditas2 = mysql_query("SELECT * FROM relasi_impor WHERE id_ko moditas='" .
$array_kombinasi_ctpro['id_komoditas'] . "'
and id_negara='" . $array_kombinasi_ctpro['id_negara'] . "' ORDER BY id_relasi_impor ASC LIMIT $jum_transaksi");
$num_komoditas2 = mysql_num_rows($sql_num_komoditas2);
if($hasil_total >= $confidence){
$sql_cek_hasil = mysql_query("SELECT * FROM hasil_ctpro WHERE id_komoditas='" . $array_kombinasi_ctpro['id_komoditas'] . "'
and id_negara='" . $array_kombinasi_ctpro['id_negara'] . "' and confidence='$hasil_total'") or die (mysql_error());
if(mysql_num_rows($sql_cek_hasil)){
echo '';
} else {
$input_komoditas = $array_kombinasi_ctpro['id_komoditas'];
$input_negara = $array_kombinasi_ctpro['id_negara'];
$insert_hasil = mysql_query("INSERT INTO hasil_fpgrowth VALUES ('','$input_komoditas', '$input_negara', '$hasil_total')")
or die (mysql_error()); }
}
echo '<p><b>Minimum Support :</b>' . $_POST['support'] . '</p>';
echo '<p><b>Minimum Confidence :</b>' . $_POST['confidence'] . '</p>'; echo '<p><b>Jumlah Transaksi :</b>' . $_POST['jum_transaksi'] . '</p>';
?>
<br>
<table cellpadding="0" cellspacing="0" width="100%" class="table"> <tr>
<th width="46">Nomor</th> <th width="424">Kesimpulan</th> <th width="235">Nilai Asosiasi</th> </tr>
<?php
$TRecord = mysql_query("SELECT * FROM hasil_ctpr order by id_hasil_fpgrowth asc ") or die(mysql_error());
$i=1; $j=1;
<tr>
<td><?php echo $j; ?></td>
<td><?php $sql_nama_negara = mysql_query("SELECT * FROM negara where id_negara='" . $data['id_negara'] . "'");
$array_nama_negara = mysql_fetch_array($sql_nama_negara);
$sql_nama_komoditas = mysql_query("SELECT * FROM komoditas where id_komoditas='" . $data['id_komoditas'] . "'");
$array_nama_komoditas = mysql_fetch_array($sql_nama_komoditas);
echo "Jika " . $array_nama_komoditas['nama_komoditas'] . " maka " . $array_nama_negara['nama_negara'];?></td>
<td><?php echo $data['confidence'];?></td>
</tr> <?php $j++;
}?> </table>
<?php
$time = explode(' ', $time); $time = $time[1] + $time[0]; $finish = $time;
$total_time = round(($finish - $start), 4);
echo "Lama Proses Filtering : " . $total_time." detik";
} ?>
<div class="row-fluid"> <div class="span12">
<div class="block-fluid table-sorting"> <div class="clear"></div>
DAFTAR PUSTAKA
Aritonang, P. 2012. Implementasi Data Mining Dengan Association Rule dalam Pengambilan Keputusan Untuk Korelasi Pembelian Produk Menggunakan Algoritma Apriori. Skripsi. Universitas Sumatera Utara.
Asmoko,Hindri. 2013. Teknik Ilustrasi Masalah – Fishbone Diagram. (Online) http://www.bppk.depkeu.go.id/bdpimmagelang/images/unduh/teknik_ilustr asi_masalah.pdf.
Dhivya, Mrs. A.B & Kalpana Dr (Mrs) B. 2010. A Study on the Performance of CT-Apriori and CT-Pro Algorithms using Compressed Structures for Pattern Mining.Journal of Global Research in Computer Science Vol. 1 No.2
(2010,September) 8-15.
Gopalan, R.P. & Sucahyo Y.G. 2004.High performance frequent patterns extraction using compressed fp-tree. Prosiding SIAM International Workshop on
High Performance and Distributed Mining.
Han,J.andKamber,M.“Datamining:ConceptsandTechniques”,2ndEdition.TheMorga
nKaufmannseriesinDataManagementSystem,JimGrey,seriesEditor.2006
.
Huda, Nuqson Masykur.2010. Aplikasi Data Mining untuk Menampilkan Informasi Tingkat Kelulusan Mahasiswa. Skripsi. Universitas Diponegoro
Kusrini & Emha Taufiq Luthfi. 2009. Algoritma - Data mining. Yogyakarta : Penerbit Andi.
Larose, Daniel T. 2005. Discovering Knowledge in Data : An Introduction to Data
Madcoms. 2005. Membuat Aplikasi Database Karyawan Online Berbasis Web dengan
PHP dan MySql.Yogyakarta : Penerbit Andi
Ruldeviyani, Y & Fahrian, M. 2008.Implementasi Algoritma-Algoritma Association
Rules sebagai Bagian dari Pengembangan Data Mining Algorithms
Collection. Prosiding Konferensi Nasional Sistem dan Informatika,pp.
244-248
Wirdasari, D& Calam, A.2011.Penerapan Data mining untuk Mengolah Data Penempatan Buku di Perpustakaan SMK TI PAB 7 Lubuk Pakam dengan Metode Association Rule. Jurnal SAINTIKOM Vol. 10.No. 2 (2011,Mei)
137-150.
Witten, I.H & Frank E. 2005. Data Mining : practical machine learning tools and
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
Analisis sistem yang akan dibangun yaitu berupa analisis pencarian rule berdasarkan
association rule dengan algoritma Apriori dan algoritma CT-Pro, dan pada tahapan
perancangan sistem, akan dibahas perancangan Data Flow Diagram (DFD), perancangan alur kerja (flowchart) dan perancangan antarmuka pemakai (user
interface).
3.1 Analisis Masalah
Masalah yang dihadapi dalam membangun aplikasi ini adalah sebagai berikut:
“bagaimana menghasilkan sebuah pengetahuan ataupun informasi baru yang masih tersimpan dalam sebuah data yang besar”.
Adapun metode yang digunakan dalam menganalisis permasalahan yang dihadapi dalam membangun aplikasi ini yaitu Fishbone Diagram. Diagram Fishbone sering disebut dengan istilah Diagram Ishikawa. Penyebutan diagram ini sebagai Diagram Ishikawa karena yang mengembangkan model diagram ini adalah Dr. Kaoru Ishikawa pada sekitar Tahun 1960-an. Diagram Ishikawa dikenal dengan Diagram
fishbone karena diagram ini bentuknya menyerupai kerangka tulang ikan yang bagian-bagiannya meliputi kepala, sirip, dan duri.
digambarkan pada sirip dan durinya. Pada Gambar 3.1 merupakan sebuah diagram
fishbone yang penulis coba buat untuk analisis masalah dalam menghasilkan sebuah
informasi ataupun pengetahuan baru.
User
informasi baru Database
Gambar 3.1 Diagram Ishikawa untuk analisis masalah
3.2 Analisis Data
Tabel 3.1 Data Ekspor
Tgl Ekspor
ID
Ekspor Data Ekspor
Tgl Ekspor
ID
Ekspor Data Ekspor
02/01/2013
E1 Karet Lembaran-India 02/01/2013
E11 Kopi Biji-Kanada
E2 Kayu Karet-Malaysia E12
Karet Lembaran-Cina
E3 Kakao Biji-Cina E13
Ubi Jalar-Korea Selatan
E4 Kakao Biji-Singapura E14 Gambir-Pakistan
E5 Ubi Jalar-Jepang E15 Sapu Lidi-Pakistan
E6 Kopi Biji-Singapura E16 Kulit Kayu
Manis-Republik Dominika
E7
Kopi Biji-Amerika
Serikat E17 Kopi Biji-Jerman
E8 Kopi Biji-Malaysia E18 Kayu Karet-Cina
E9 Pinang Biji-Pakistan E19 Kopi Biji-Australia
E10
03/01/2013 E21 Karet Lembaran-India 03/01/2013 E31
Pinang Biji-Sri
Belanda 04/01/2013 E51
Biji-Tabel 3.1 Data Ekspor (Lanjutan)
Tgl Ekspor
ID
Ekspor Data Ekspor Tgl Ekspor
ID
Ekspor Data Ekspor
04/01/2013
E45 Kayu Karet-Cina E55 Kopi Biji-Kanada
E46 Kayu Karet-Malaysia E56
Kopi Biji-Korea Selatan
E47
Kayu Karet-Thailand E57
Kulit Kayu Manis-Thailand
E48 Wood
Flooring-Malaysia E58 Pinang Biji-Pakistan
E49 Wood
Flooring-Vietnam E59
07/01/2013 E61 Kopi Biji-Singapura 07/01/2013 E71 Minyak Sawit-Cina
E62 Kayu Karet-Malaysia E72 Minyak Sawit-Haiti
08/01/2013 E81 Pinang Biji-Pakistan 08/01/2013 E91
Manis-Tabel 3.1 Data Ekspor (Lanjutan)
Tgl Ekspor ID
Ekspor Data Ekspor Tgl Ekspor
ID
Ekspor Data Ekspor
08/01/2013
E90 Karet Lempengan-Cina E100 Kopi Biji-Kanada
09/01/2013 E101 Minyak Sawit-Algeria 09/01/2013 E111
Wood
Flooring-10/01/2013 E121
Kopi Biji-Korea
Selatan 10/01/2013 E131
Kubis-Tabel 3.1 Data Ekspor (Lanjutan)
Tgl Ekspor ID
Ekspor Data Ekspor Tgl Ekspor
ID
Ekspor Data Ekspor
10/01/2013 E128 Minyak Sawit-Turki 10/01/2013
E138 Kopi Biji-Perancis
E129 Karet Lempengan-Cina E139
Kopi Biji-Amerika Serikat
E130
Kulit Kayu
Manis-Republik Dominika E140 Kopi Biji-Kanada
11/01/2013 E141 Minyak Sawit-Cina 11/01/2013 E151 Minyak Sawit-Siria
E142 Kayu Karet-Malaysia E152
14/01/2013 E161
Kopi Biji-Amerika
Serikat 14/01/2013 E171
Sawit-Tabel 3.1 Data Ekspor (Lanjutan)
Tgl Ekspor ID
Ekspor Data Ekspor
Tgl Ekspor
ID
Ekspor Data Ekspor
15/01/2013 E181 Minyak Sawit-Cina 15/01/2013 E191 Kulit Kayu Manis-Amerika Serikat
3.2.1 Algoritma Apriori
Pada tahapan ini akan dilakukan teknik aturan asosiasi dengan algoritma Apriori dan perancangan flowchart algoritma apriori dapat dilihat pada Gambar 3.2. Dari
flowchart tersebut dapat diuraikan lebih jelas proses asosiasi dari algoritma apriori,
dimana terlebih dahulu ditentukan nilai minimum support dan nilai minimum
confidence. Kemudian akan dilakukan proses pembuatan tabel C1 dengan
Min Support dan Min Confidence
Support(a) = (jumlah transaksi a / total transaksi) * 100%
Proses Pembuatan tabel C1
Proses Pembuatan Tabel C2
Support =( jumlah transaksi mengandung a
dan b / total transaksi) *
If confidence >= min confidence (kombinasi transaksi a
dan b / transaksi a) *100%
Gambar 3.2 Flowchart Algoritma Apriori
Langkah 1 : Mencari C1 (Kandidat 1-itemset)
Setelah ditentukan nilai minimum support dan minimum confidence, maka dilakukan proses pembentukan tabel C1. Dari Tabel 3.1 akan dilakukan pencarian nilai support pada masing-masing item dengan rumus :
Jumlah Transaksi mengandung A
Support : x 100%
Berdasarkan rumus diatas dapat dihitung nilai support masing-masing item, berikut ini dimisalkan pencarian nilai support untuk item Karet Lembaran berdasarkan data Tabel 3.1 :
20
Support(Karet Lembaran) : x 100% = 10%.
200
Maka dari hasil pencarian nilai support masing-masing item tersebut, tabel C1 terbentuk seperti yang terlihat pada Tabel 3.2.
Tabel 3.2 C1 (Kandidat 1-itemset)
Itemset Support
Tabel 3.2 C1 (Kandidat 1-itemset)(Lanjutan)
Itemset Support
Cina 32/200 * 100% = 16 %
Itemset Support
Langkah 2 : Menentukan L1
Berdasarkan Tabel 3.2 maka langkah selanjutnya yaitu penentuan nilai L1 = {large
1-itemset} dengan minimum support ≥ 5 %. Nilai-nilai support pada Tabel 3.2 yang lebih besar atau sama dengan 5% adalah nilai L1 ( Large 1-itemset) seperti terlihat pada Tabel 3.3
Tabel 3.3 L1 ( Large 1-itemset)
Itemset Support
Kopi Biji 48/200 * 100% = 24 %
Itemset Support
Kayu Karet 15/200 * 100% = 7,5 %
Taiwan 13/200 * 100% = 6,5 %
Langkah 3 : Mencari C2 (Kandidat 2-itemset)
Langkah selanjutnya yaitu mencari nilai support count berdasarkan kombinasi antara negara dan nama komoditas dengan rumus :
Jumlah Transaksi mengandung A dan B
Support : x 100%
Total Transaksi
Berdasarkan rumus diatas dapat dihitung nilai support masing-masing item, berikut ini dimisalkan pencarian nilai support untuk item Kopi Biji-Malaysia berdasarkan data Tabel 3.3 :
4
Support(Kopi Biji-Malaysia) : x 100% = 2%.
200
Hasil dari pencarian nilai support masing-masing item dapat dilihat pada Tabel 3.4.
Tabel 3.4 C2 (Kandidat 2-itemset)
Itemset Support Count Support
Kopi Biji, Malaysia 4 4/200 * 100% = 2%
Kopi Biji, Cina 0 0/200 * 100% = 0%
Kopi Biji, Amerika Serikat 15 15/200 * 100% = 7,5%
Kopi Biji, Pakistan 0 0/200 * 100% = 0%
Kopi Biji, Taiwan 3 3/200 * 100% = ,5%
Minyak Sawit, Malaysia 0 0/200 * 100% = 0%
Minyak Sawit, Cina 11 11/200 * 100% = 5,5%
Itemset Support Count Support
Karet Lembaran, Amerika
Serikat 1 1/200 * 100% = 0,5%
Karet Lembaran, Pakistan 0 0/200 * 100% = 0%
Karet Lembaran, Taiwan 0 0/200 * 100% = 0%
Kulit Kayu Manis,Malaysia 0 0/200 * 100% = 0%
Kulit Kayu Manis,Cina 0 0/200 * 100% = 0%
Kulit Kayu Manis, Amerika
Serikat 3 3/200 * 100% = 1,5%
Langkah 4 : Menentukan L2
Berdasarkan Tabel 3.4 maka langkah selanjutnya yaitu penentuan nilai L2 = {large
Tabel 3.5 L2 (Large 2-itemset)
Itemset Support
Count Support
Kopi Biji, Amerika Serikat 15 15/200 * 100% = 7,5%
Minyak Sawit, Cina 11 11/200 * 100% = 5,5%
Pinang Biji, Pakistan 17 17/200 * 100% = 8,5%
Karet Lembaran, Cina 10 10/200 * 100% = 5%
Kemudian akan dihitung nilai confidence dari setiap item L2, dengan hasil dapat terlihat pada Tabel 3.6
Tabel 3.6 Confidence L2
Itemset x → y Confidence
Kopi biji → Amerika Serikat 15/48*100 = 31,25% Minyak sawit → Cina 11/31*100 = 35,48% Pinang Biji → Pakistan 17/24*100 = 70,83% Karet Lembaran → Cina 10/20*100 = 50%
Langkah selanjutnya yaitu dimisalkan nilai minimum confidence ≥ 35%, maka aturan asosiasi yang mungkin terbentuk adalah seperti yang terlihat pada Tabel 3.7.
Tabel 3.7 Aturan Asosiasi
If antecedent else
consequence (x --> y) Support Confidence
Kopi biji --> Amerika
Serikat 15/200 * 100% = 7,5% 15/48*100 = 31,25%
Minyak sawit --> Cina 11/200 * 100% = 5,5% 11/31*100 = 35,48%
If antecedent else
consequence (x --> y) Support Confidence
Pinang Biji --> Pakistan 17/200 * 100% = 8,5% 17/24*100 = 70,83%
Karet Lembaran --> Cina 10/200 * 100% = 5% 10/20*100 = 50%
Berdasarkan langkah-langkah di atas, maka dapat diperoleh kesimpulan bahwa komoditas yang memenuhi minimum support ≥ 5% dan minimum confidence ≥ 35%
sebagai berikut :
1. Jika mengekspor Minyak Sawit maka negara tujuannya Cina dengan nilai
support 5,5% dan confidence 35,48%
2. Jika mengekspor Pinang Biji maka negara tujuannya Pakistan dengan nilai
support 8,5% dan confidence 70,83%
3. Jika mengekspor Karet Lembaran maka negara tujuannya Cina dengan nilai
support 5% dan confidence 50%
3.2.2 Algoritma CT-Pro
Min support dan Min Confidence
Tampil tabel ekspor/impor
Proses menghitung frequent komoditas dan negara dalam
ekspor/impor
If komoditas/negara >= min support
Tampil data frequent
global
Proses menentukan frequent item(local frequent item)
Tampil tabel frequent item
Proses mencari kombinasi (frequent pattern)
If frequent pattern (kombinasi) >= 1
P1
P1
Tampil kombinasi
Proses mencari confidence
If confidence >= min confidence
1. Menentukan frequent itemset
Untuk menentukan frequent itemset, terlebih dahulu dilakukan penelusuran data ekspor pada Tabel 3.1 dengan menghitung nilai support masing-masing item.. Hasil dari penelusuran tersebut, maka akan diketahui jumlah frekuensi kemunculan tiap item dan diurutkan dari yang terbesar hingga terkecil yang dapat dilihat pada Tabel 3.8.
Tabel 3.8 Frequent Item
Kemudian data diatas diseleksi kembali yang memenuhi dengan nilai minimum
support ≥ 5%, dan hasilnya dapat terlihat pada Tabel 3.9.
Tabel 3.9 Frequent List
Index Item Count
Langkah selanjutnya adalah mengurutkan itemset pada setiap tanggal kegiatan ekspor berdasarkan frekuensi paling tinggi seperti yang terlihat pada Tabel 3.10.
Tabel 3.10 Data Ekspor berdasarkan frequent list
TGL_Ekspor Item
02/01/2013
Kopi Biji, Cina, Pinang Biji, Malaysia, Pakistan, Amerika Serikat, Karet Lembaran, Kulit Kayu Manis, Kayu Karet
03/01/2013
Kopi Biji, Cina, Minyak Sawit, Pinang Biji, Pakistan, Amerika Serikat, Karet Lembaran, Kulit Kayu Manis, Taiwan
04/01/2013
Kopi Biji, Cina, Minyak Sawit, Pinang Biji, Malaysia, Pakistan Amerika Serikat, Karet Lembaran, Kulit Kayu Manis, Kayu Karet, Taiwan
07/01/2013
Kopi Biji, Cina, Minyak Sawit, Pinang Biji, Malaysia, Pakistan, Amerika Serikat, Karet Lembaran, Kayu Karet, Taiwan
08/01/2013
Kopi Biji, Cina, Minyak Sawit, Pinang Biji, Malaysia, Pakistan, Amerika Serikat, Karet Lembaran, Kayu Karet, Taiwan
09/01/2013
Tabel 3.10 Data Ekspor berdasarkan frequent list (Lanjutan)
TGL_Ekspor Item
10/01/2013
Kopi Biji, Cina, Minyak Sawit, Pinang Biji, Malaysia, Pakistan, Amerika Serikat, Karet Lembaran, Kulit Kayu Manis, Taiwan
11/01/2013
Kopi Biji, Cina, Minyak Sawit, Pinang Biji, Malaysia, Pakistan Amerika Serikat, Karet Lembaran, Kulit Kayu Manis, Kayu Karet, Taiwan
14/01/2013
Kopi Biji, Cina, Minyak Sawit, Pinang Biji, Malaysia, Pakistan Amerika Serikat, Karet Lembaran, Kulit Kayu Manis, Kayu Karet, Taiwan
15/01/2013
Kopi Biji, Cina, Minyak Sawit, Pinang Biji, Malaysia, Pakistan Amerika Serikat, Karet Lembaran, Kulit Kayu Manis, Kayu Karet, Taiwan
2. Membentuk struktur data CFP Tree
Dari data ekspor yang berdasarkan frequent list pada Tabel 3.10, maka akan dibuat global item tablenya seperti pada Tabel 3.11.
Tabel 3.11 Global ItemTable
Langkah selanjutnya yaitu membentuk Global CFP-Tree, dapat terlihat seperti pada Gambar 3.4.
Kopi Biji[10]
Cina [10]
Minyak Sawit [9] Pinang Biji [1]
Pinang Biji [8] [1] Malaysia[1]
Malaysia[9] Pakistan[1] Pakistan[1]
Pakistan[8] A.Serikat[1] A.Serikat [1]
A.Serikat [8] Karet Lembaran[1] Karet Lembaran [1]
Karet Lembaran [2] [6] Kulit Kayu Manis[1] Kulit Kayu Manis [1]
Kayu Karet[2] Kulit Kayu Manis [6] [2] Taiwan [1] Kayu Karet [1]
Taiwan[2] Kayu Karet [4] Taiwan [2]
Taiwan [4]
Gambar 3.4 Global CFP-Tree
3. Melakukan proses mining
Tabel. Langkah yang dilakukan yaitu dilakukan pencarian node yang berkaitan
dengan Pakistan pada Global CFP-Tree yang kemudian disebut Local Frequent Item dan digunakan untuk membuat Local Item Tabel. Setelah itu dibuat Local CFP-Tree berdasarkan Local Item Tabel seperti yang terlihat pada Gambar 3.5.
Index Item Count
4 Pakistan 10
Gambar 3.5 Local CFP-Tree
Maka dari Local CFP-Tree di atas maka dapat diperoleh frequent pattern Pakistan yaitu :
- Pakistan
- Malaysia-Pakistan, Pinang Biji-Pakistan
- Pinang Biji-Malaysia-Pakistan, Minyak Sawit-Pinang Biji-Pakistan
- Minyak Sawit-Pinang Biji-Malaysia-Pakistan, Cina-Minyak Sawit-Pinang Biji-Pakistan, Cina-Pinang Biji-Malaysia-Pakistan
- Kopi Biji-Minyak Sawit-Pinang Biji-Malaysia-Pakistan, Kopi Biji-Cina-Minyak Sawit-Pinang Biji-Pakistan, Kopi Biji-Cina-Pinang Biji-Malaysia-Pakistan
Berdasarkan frequent pattern tersebut di atas, maka dapat dihitung nilai confidence dengan minimal confidence ≥ 35%. Karena perhitungannya sangat banyak, maka
penulis mengambil contoh dari frequent itemset {Pinang Biji-Malaysia-Pakistan} untuk dicari kombinasinya seperti yang terlihat pada Gambar 3.6 dan dihitung nilai
confidencenya.
Gambar 3.6 Proses Pencarian Kombinasi
Dari proses kombinasi tersebut, diperoleh pola sebagai berikut dengan perhitungan
confidence sebagai berikut :
- Pinang Biji → Malaysia : 0/24 x 100% = ~ - Malaysia → Pinang Biji : 0/22 x 100% = ~
- Pinang Biji → Pakistan : 17/24 x 100% = 70,83% - Pakistan → Pinang Biji : 0/22 x 100% = ~
- Malaysia → Pakistan : 0/22 x 100% = ~ - Pakistan → Malaysia : 0/22 x 100% = ~
Untuk pola kombinasi 3 tidak penulis hitung karena dari data kegiatan ekspor tidak terdapat kombinasi 3.
Berdasarkan langkah-langkah di atas, maka dapat diperoleh kesimpulan bahwa komoditas yang memenuhi minimum support ≥ 5% dan minimum confidence ≥ 35%
sebagai berikut :
1. Jika mengekspor Pinang Biji maka negara tujuannya Pakistan dengan nilai
confidence 70,83%
Pinang Biji (PB) Malaysia (M) Pakistan(P)
PB,M PB,P M,P
3.3 Perancangan Sistem
Perancangan sistem terdiri dari pembuatan data flow diagram (DFD) dan
flowchart sistem, perancangan database dan perancangan antarmuka pemakai (user interface).
3.3.1 Data flow diagram (DFD)
Data Flow Diagram (DFD) adalah suatu diagram yang menggunakan notasi-notasi untuk menggambarkan arus dari data sistem, yang penggunaannya sangat membantu untuk memahami sistem secara logika, tersruktur dan jelas. DFD merupakan alat bantu dalam menggambarkan atau menjelaskan . DFD disebut juga dengan nama
Bubble chart, Bubble diagram, model proses, diagram alur kerja atau model fungsi.
Berikut ini merupakan DFD untuk kedua algoritma :
1. DFD Level 0 Untuk Proses Membuat Perbandingan Algoritma Apriori dan Algoritma CT-Pro
User
P0 Perbandingan Algoritma Apriori dan
Algoritma CT-Pro Info Hasil Aturan Asosiasi
Gambar 3.7 DFD Level-0 Untuk Proses Membuat Perbandingan Algoritma Apriori dan Algoritma CT-Pro
Dari gambar 3.7 diatas dapat dijelaskan proses input dan output dari sistem yaitu yang dimulai dari user memasukkan data login, data komoditas, data negara, data relasi, data min support dan data min confidence kemudian sistem akan memproses dengan beberapa langkah sesuai dengan tahapan dari kedua algoritma. Dan hasil akhir dari sistem mining ini akan menghasilkan kombinasi komoditas dengan negara yang terbanyak baik itu ekspor maupun impor.
2. DFD Level 1 Untuk Proses Perbandingan Algoritma Apriori dan Algoritma CT-Pro
P1 Login
Info Apriori Ekspor / Apriori Impor
Data Min Support Data Min Confidence
Info CT-Pro Ekspor / CT-Pro Impor
Gambar 3.8 DFD Level-1 Untuk Proses Perbandingan Algoritma Apriori dan Algoritma CT-Pro
3. DFD Level 2 Untuk Proses Relasi
P4.1 Relasi
Ekspor Relasi_Ekspor
Data Relasi_Ekspor
Info Relasi_Ekspor User
Data Relasi_Ekspor
Info Relasi_Ekspor
Gambar 3.9 DFD Level-2 untuk Relasi Ekspor
P4.2 Relasi
Impor Relasi_Impor
Data Relasi_Impor
Info Relasi_Impor User
Data Relasi_Impor
Info Relasi_Impor
Gambar 3.10 DFD Level-2 untuk Relasi Impor
4. DFD Level 2 Untuk Proses Algoritma Apriori
P5.1 Cari C1
Info Hasil C1 dan L1
P5.2 Cari C2
P5.3 Cari L2 Hasil akhir_Kombinasi Data Hasil L2 Info Hasil C1 dan L1
Data Min Support Data Relasi
Info Hasil C2
Data Nilai Min Confidence
Hasil_Confidence Data L2
Info Hasil_Confidence Info Hasil Aturan Asosiasi
Gambar 3.11 DFD Level-2 untuk proses Algoritma Apriori
5. DFD Level 2 Untuk Proses Algoritma Apriori
P6.1 Cari Info Hasil Aturan Asosiasi
6. DFD Level 3 Untuk Olah Data Relasi
Dari DFD Level-2 untuk proses relasi dapat dikembangkan dalam bentuk DFD Level 3 untuk olah data relasi, baik itu olah data relasi ekspor maupun olah data impor. Kedua DFD tersebut dapat dilihat pada Gambar 3.13 dan Gambar 3.14.
P4.1.1 Tambah Relasi
Ekspor
Relasi_Ekspor Data Relasi_Ekspor yg
akan ditambah
User
Data Relasi_Ekspor yg akan ditambah
Info Relasi_Ekspor yg sudah ditambah
Info Relasi_Ekspor yg sudah ditambah
P4.1.2 Edit
Relasi Ekspor Relasi_Ekspor Data Relasi_Ekspor yg
akan diedit
Info Relasi_Ekspor yg sudah diedit Data Relasi_Ekspor yg
akan diedit
Info Relasi_Ekspor yg sudah diedit
P4.1.3 Hapus
Relasi Ekspor Relasi_Ekspor Data Relasi_Ekspor yg
akan dihapus
Info Relasi_Ekspor yg sudah dihapus Data Relasi_Ekspor yg
akan dihapus
Info Relasi_Ekspor yg sudah dihapus
Gambar 3.13 DFD Level-3 untuk proses olah data relasi ekspor
P4.2.1 Tambah Relasi
Impor
Relasi_Impor Data Relasi_Impor yg
akan ditambah
User
Data Relasi_Impor yg akan ditambah
Info Relasi_Impor yg sudah ditambah
Info Relasi_Impor yg sudah ditambah
P4.2.2 Edit
Relasi Impor Relasi_Impor Data Relasi_Impor yg
akan diedit
Info Relasi_Impor yg sudah diedit Data Relasi_Impor yg
akan diedit
Info Relasi_Impor yg sudah diedit
P4.2.3 Hapus
Relasi Impor Relasi_Impor Data Relasi_Impor yg
akan dihapus
Info Relasi_Impor yg sudah dihapus Data Relasi_Impor yg
akan dihapus
Info Relasi_Impor yg sudah dihapus
3.3.2 Perancangan flowchart sistem
Perancangan alur kerja dari sistem yang dirancang dapat dilihat pada Gambar 3.15. Start
Perancangan alur kerja sistem tersebut dimulai dengan start, maka akan tampil halaman utama dari sistem. Dari tampilan utama sistem tersebut, terdapat beberapa menu yang dapat dipilih. Apabila user memilih menu komoditas maka akan tampil data komoditas, jika tidak maka dapat memilih menu negara maka akan tampil data negara. Apabila user memilih menu ekspor maka akan tampil data kegiatan ekspor. Kemudian apabila user memilih Apriori Ekspor maka sistem akan menampilkan proses asosiasi apriori dengan memasukkan nilai minimum support dan minimum
confidence serta jumlah transaksinya dan apabila user memilih CT-Pro Ekspor maka
sistem akan menampilkan proses asosiasi ct-pro dengan memasukkan nilai minimum
support dan minimum confidence serta jumlah transaksinya. Demikian juga halnya
apabila user memilih menu impor, apriori impor dan ct-pro impor.
3.3.3 Perancangan database
Perancangan database dalam sistem ini yaitu berupa perancangan struktur tabel komoditas, tabel negara, tabel ekspor dan tabel impor.
1. Tabel User
Pada tabel user seperti yang terlihat pada Tabel 3.12 berfungsi sebagai data login untuk memulai sebuah sistem.
Tabel 3.12 Tabel User
Nama Field Type Length Key Keterangan
id_user int 10 * ID user
username Varchar 30 Username
2. Tabel Komoditas
Pada tabel komoditas seperti yang terlihat pada Tabel 3.13 berfungsi untuk menyimpan data komoditas ekspor ataupun impor.
Tabel 3.13 Tabel Komoditas
Nama Field Type Length Key Keterangan
id_negara int 10 * ID Negara
nama_negara Varchar 30 Nama Negara
3. Tabel Negara
Pada tabel negara seperti yang terlihat pada Tabel 3.14 berfungsi untuk menyimpan data negara tujuan ekspor ataupun impor.
Tabel 3.14 Tabel Negara
Nama Field Type Length Key Keterangan
id_komoditas int 10 * ID Komoditas
nama_ko moditas Varchar 30 Nama Komoditas
deskripsi Text Deskripsi
4. Tabel Relasi
Pada tabel relasi seperti yang terlihat pada Tabel 3.15 berfungsi untuk menyimpan data relasi antara negara dengan komoditas pada tanggal tertentu.
Tabel 3.15 Tabel Relasi
Nama Field Type Length Key Keterangan
id_relasi int 10 * ID Relasi
Tabel 3.15 Tabel Relasi (Lanjutan)
Nama Field Type Length Key Keterangan
id_komoditas int 10 ID Komoditas
id_negara int 10 ID Negara
tgl_relasi Date Tanggal Relasi
5. Tabel Kombinasi Gabung
Pada tabel kombinasi gabung seperti yang terlihat pada Tabel 3.16 berfungsi untuk mmenyimpan data kombinasi antara negara dengan komoditas.
Tabel 3.16 Tabel Kombinasi Gabung
Nama Field Type Length Key Keterangan
id_komoditas int 10 * Id_komoditas
id_negara int 10 Id_negara
6. Tabel Hasil Akhir Kombinasi
Tabel hasil akhir kombinasi seperti pada Tabel 3.17 berfungsi untuk menyimpan data hasil akhir kombinasi yang telah memenuhi nilai minimum confidence dan minimum
support.
Tabel 3.17 Tabel Hasil Akhir Kombinasi
Nama Field Type Length Key Keterangan
id_hasil_akhir int 10 * id_hasil_akhir
id_komoditas int 10 id_komoditas
id_negara int 10 id_negara
Tabel 3.17 Tabel Hasil Akhir Kombinasi (Lanjutan)
Nama Field Type Length Key Keterangan
hasil_support varchar 30 hasil_support
final_hasil varchar 30 final_hasil
7. Tabel Hasil Confidence
Tabel 3.18 berfungsi untuk menyimpan hasil data akhir yang memenuhi nilai minimum confidence yang merupakan kesimpulan akhir.
Tabel 3.18 Tabel Hasil Confidence
Nama Field Type Length Key Keterangan
id_ hasil_confidence int 10 * id_ hasil_confidence
id_komoditas int 10 id_komoditas
id_negara int 10 id_negara
hasil_confidence varchar 30 hasil_confidence
8. Tabel Gabung CT-Pro
Tabel gabung ct-pro pada Tabel 3.19 berfungsi untuk menyimpan data kombinasi antara negara dengan komoditas.
Tabel 3.19 Tabel Gabung CT-Pro
Nama Field Type Length Key Keterangan
id_item int 10 * Id_item
item_gabung int 10 Item_gabung
count_gabung varchar 30 Count_gabung
9. Tabel Frequent Komoditas
Tabel frequent komoditas seperti pada Tabel 3.20 berfungsi untuk menyimpan data jumlah frekuensi komoditas.
Tabel 3.20 Tabel Frequent Komoditas
Nama Field Type Length Key Keterangan
id_frequent_komoditas int 10 * id_frequent_komoditas
kode_relasi int 10 kode_relasi
id_komoditas int 10 id_komoditas
10. Tabel Frequent Negara
Tabel frequent negara seperti pada Tabel 3.21 berfungsi untuk menyimpan data jumlah frekuensi komoditas.
Tabel 3.21 Tabel Frequent Negara
Nama Field Type Length Key Keterangan
id_frequent_negara int 10 * id_frequent_negara
kode_relasi int 10 kode_relasi
id_negara int 10 id_negara
11. Tabel Hasil CT-Pro
Tabel hasil ct-pro pada Tabel 3.22 berfungsi untuk menyimpan hasil data akhir yang memenuhi nilai minimum confidence yang merupakan kesimpulan akhir.
Tabel 3.22 Tabel Hasil CT-Pro
Nama Field Type Length Key Keterangan
id_ hasil_ct-pro int 10 * id_ hasil_ct-pro
Tabel 3.22 Tabel Hasil CT-Pro (Lanjutan)
Nama Field Type Length Key Keterangan
id_negara int 10 id_negara
confidence varchar 40 confidence
3.3.4 Perancangan interface sistem
Perancangan tampilan sistem yang akan dibuat adalah sebagai berikut :
1. Perancangan Login
Gambar 3.16 menjelaskan tampilan untuk form login dari sistem yang akan dibuat :
Login Username
Password
1
3 2
Gambar 3.16 Form Login Keterangan :
2. Perancangan Halaman Utama
Gambar 3.17 menjelaskan perancangan halaman utama dari sistem, dalam halaman ini terdapat beberapa pilihan.
Ekspor Impor Data Mining Komoditas Pertanian
Dashboard
Gambar 3.17 Halaman Utama Keterangan :
1. Tombol untuk ke menu utama 2. Tombol untuk ke menu komoditas 3. Tombol untuk ke menu negara 4. Tombol untuk ke menu Ekspor
5. Tombol untuk ke menu proses Apriori Ekspor 6. Tombol untuk ke menu proses CT-Pro Ekspor 7. Tombol untuk ke menu Impor
3. Perancangan Menu Komoditas
Gambar 3.18 menjelaskan merupakan perancangan menu komoditas yang berguna sebagai menu untuk data komoditas dan Gambar 3.19 menjelaskan tampilan untuk edit komoditas.
Tabel Komoditas
No Kode Komoditas Nama Komoditas Opsi
Edit Delete
Gambar 3.18 Menu Komoditas Keterangan :
1. Daftar nomor komoditas yag berfungsi sebagai id komoditas 2. Daftar Kode komoditas
3. Daftar Nama komoditas
4. Menu untuk menambah komoditas 5. Menu delete komoditas
6. Menu edit komoditas
Edit Komoditas
Keterangan :
1. Untuk mengisi nama komoditas 2. Untuk mengisi deskripsi komoditas
3. Menu untuk menyimpan data komoditas baru
4. Perancangan Menu Negara
Gambar 3.20 menjelaskan perancangan menu komoditas yang berguna sebagai menu untuk data komoditas dan Gambar 3.21 menjelaskan tampilan untuk edit komoditas.
Tabel Negara
No Nama Negara Opsi
Edit Delete
3
5 2
1
4
Gambar 3.20 Menu Negara Keterangan :
1. Daftar nomor komoditas yag berfungsi sebagai id negara 2. Daftar nama negara
3. Menu edit komoditas
Edit Negara
Nama Negara
Simpan
1
2
Gambar 3.21 Menu Edit Negara
Keterangan :
1. Untuk mengisi nama negara
2. Menu untuk menyimpan data negara baru
5. Perancangan Menu Ekspor
Menu ekspor merupakan menu yang berisi data kegiatan ekspor komoditas pertanian yang dapat dilihat pada Gambar 3.22 dan juga pada Gambar 3.23 yang merupakan menu input ekspor.
Tabel Ekspor
No Nama Negara Opsi
Edit Delete
3 2 1
Kode Relasi Nama
Komoditas Tanggal Komoditas
Gambar 3.22 Menu Ekspor Keterangan :
1. Daftar nomor kegiatan ekspor
3. Daftar nama komoditas 4. Daftar nama negara
5. Menu untuk tambah ekspor 6. Menu delete ekspor
7. Menu edit ekspor 8. Menu tanggal ekspor
Input Ekspor
Gambar 3.23 Menu Input Ekspor
Keterangan :
1. Untuk mengisi relasi antara komoditas dan negara 2. Menu daftar nama komoditas
3. Menu daftar nama negara 4. Menu tanggal ekspor
5. Menu untuk menyimpan daftar baru ataupun perubahan data
6. Perancangan Menu Apriori Ekspor
Apriori
Gambar 3.24 Menu Apriori Ekspor
Keterangan :
1. Untuk mengisi nilai minimum support 2. Untuk mengisi nilai minimum confidence 3. Menu untuk proses mining
Analisis dengan Apriori
Nomor Kesimpulan Confidence
Lama Proses : ... detik 2
1 3
4
Gambar 3.25 Analisis dengan Apriori Keterangan :
1. Daftar nomor hasil mining 2. Kesimpulan dari proses mining 3. Nilai confidence
4. Waktu dalam proses sistem
7. Perancangan Menu CT-Pro Ekspor
CT-Pro
Minimum Support
Minimum Confidence
Proses
1
3 2
Gambar 3.26 Menu CT-Pro Ekspor
Keterangan :
1. Untuk mengisi nilai minimum support 2. Untuk mengisi nilai minimum confidence 3. Menu untuk proses mining
Analisis dengan CT-Pro
Nomor Kesimpulan Confidence
Lama Proses : ... detik 2
1 3
4
Gambar 3.27 Analisis dengan CT-Pro
Keterangan :
1. Daftar nomor hasil mining 2. Kesimpulan dari proses mining 3. Nilai confidence
4. Waktu dalam proses sistem
BAB 4
IMPLEMENTASI DAN PENGUJIAN SISTEM
Implementasi yang akan dijabarkan pada bab ini berdasarkan perancangan sistem pada bab sebelumnya. Dan untuk pengujian sistem dilakukan dengan menentukan nilai minimum support dan minimum confidence yang berbeda yang akan menghasilkan aturan asosiasi yang berbeda-beda.
4.1 Implementasi
Implementasi sistem dengan menerapkan algoritma Apriori dan algoritma CT-Pro untuk menemukan pola frekuensi ekspor/impor terbanyak oleh pengguna jasa, diaplikasikan kedalam bahasa pemrograman PHP. Dalam implementasi dari sistem ini membutuhkan perangkat keras (hardware) dan perangkat lunak (software). Adapun hardware dan software yang akan dibutuhkan sebagai berikut :
1. Perangkat Keras (Hardware)
a. Micro Processor minimal Pentium 4 b. Harddisk minimal 40GB
c. RAM berkapasitas 512MB d. Monitor
e. Keyboard f. Mouse
2. Perangkat Lunak (Software) a. PHP 5.3.8
b. MySql 5.5.16
Adapun tampilan dari aplikasi sistem yang menerapakan algoritma Apriori dan algoritma CT-Pro adalah sebagai berikut :
a. Tampilan Form Menu Login
Gambar 4.1 Form Menu Login
Pada form login seperti terlihat pada Gambar 4.1, user dapat mengisi username dan password dengan benar untuk dapat menjalankan sistem menuju menu utama.
b. Tampilan Form Menu Utama
Gambar 4.2 Form Menu Utama
c. Tampilan Form Menu Komoditas
Menu komoditas digunakan untuk memasukkan data komoditas baik itu untuk ekspor maupun impor ke dalam sistem adapun tampilannya dapat dilihat pada Gambar 4.3.
Gambar 4.3 Form Menu Komoditas
Gambar 4.4 Form Menu Input Komoditas
Menu edit berguna untuk mengedit data komoditas yang telah dimasukkan sebelumnya dan tampilan untuk menu edit komoditas ini dapat dilihat pada Gambar 4.5
d. Tampilan Form Menu Negara
Menu negara digunakan untuk memasukkan data negara baik itu untuk ekspor maupun impor ke dalam sistem adapun tampilannya dapat dilihat pada Gambar 4.6.
Gambar 4.6 Form Menu Negara
Gambar 4.7 Form Menu Input Negara
Menu edit berguna untuk mengedit data negara yang telah dimasukkan sebelumnya dan tampilan untuk menu edit komoditas ini dapat dilihat pada Gambar 4.8.
e. Tampilan Form Menu Ekspor
Menu ekspor digunakan untuk memasukkan data ekspor yang merupakan kombinasi antara negara dan komoditas ke dalam sistem, demikian halnya untuk menu impor adapun tampilannya dapat dilihat pada Gambar 4.9.
Gambar 4.9 Form Menu Ekspor
Gambar 4.10 Form Menu Input Ekspor
Menu edit berguna untuk mengedit data ekspor yang telah dimasukkan sebelumnya dan tampilan untuk menu edit komoditas ini dapat dilihat pada Gambar 4.11.
f. Tampilan Form Input Parameter Apriori / CT-Pro
Menu Input Parameter Apriori / CT-Pro seperti terlihat pada Gambar 4.12 berguna untuk memasukkan data nilai minimum support dan minimum confidence.
Gambar 4.12 Form Menu Input Parameter Apriori / CT-Pro
Setelah data nilai minimum support dan minimum confidence dimasukkan, klik tombol proses untuk memperoleh hasil aturan asosiasi yang diingiinkan. Dan untuk melihat hasil aturan asosiasi tersebut dapat dilihat pada Gambar 4.13
4.2 Pengujian Sistem
Pengujian sistem dilakukan dengan memasukkan nilai yang berbeda-beda untuk parameter support dan confidence, sehingga dapat diperoleh hasil ataupun rule yang baru sebagai berikut :
1. Jika dimasukkan minimum support = 3% dan confidence = 15 %
Gambar 4.14 Pengujian 1 untuk proses apriori
Berdasarkan pengujian yang dilakukan seperti terlihat pada Gambar 4.14 banyak rule yang dihasilkan yaitu 12 rules selama 1,6385 detik.
Berdasarkan pengujian yang dilakukan seperti terlihat pada Gambar 4.15 banyak rule yang dihasilkan yaitu 12 rules selama 0,5784 detik.
2. Jika dimasukkan minimum support = 3% dan confidence = 45 %
Gambar 4.16 Pengujian 2 untuk proses apriori
Berdasarkan pengujian yang dilakukan seperti terlihat pada Gambar 4.16 banyak rule yang dihasilkan yaitu 6 rules selama 1,6029 detik.
Gambar 4.17 Pengujian 2 untuk proses ct-pro
3. Jika dimasukkan minimum support = 4% dan confidence = 15 %
Gambar 4.18 Pengujian 3 untuk proses apriori
Berdasarkan pengujian yang dilakukan seperti terlihat pada Gambar 4.18 banyak rule yang dihasilkan yaitu 10 rules selama 1,4732 detik.
Gambar 4.19 Pengujian 3 untuk proses ct-pro
4. Jika dimasukkan minimum support = 4% dan confidence = 50 %
Gambar 4.20 Pengujian 4 untuk proses apriori
Berdasarkan pengujian yang dilakukan seperti terlihat pada Gambar 4.20 banyak rule yang dihasilkan yaitu 4 rules selama 1,4301 detik.
Gambar 4.21 Pengujian 4 untuk proses ct-pro
5. Jika dimasukkan minimum support = 5% dan confidence = 50 %
Gambar 4.22 Pengujian 5 untuk proses apriori
Berdasarkan pengujian yang dilakukan seperti terlihat pada Gambar 4.22 banyak rule yang dihasilkan yaitu 3 rules selama 1,3579 detik.
Gambar 4.23 Pengujian 5 untuk proses ct-pro
Dari beberapa pengujian yang telah dilakukan, maka dapat dilihat hasil perbandingan pengujian dari kedua algoritma seperti yang terlihat pada Tabel 4.1 dan Gambar 4.24.
Tabel 4.1 Hasil pengujian
Pengujian
Apriori CT-Pro
Rules Waktu
Berdasarkan grafik pada Gambar 4.24 dapat terlihat jelas bahwa dengan memasukkan nilai minimum support dan confidence yang berbeda diperoleh hasil yang berbeda juga yaitu :
a. Untuk algoritma apriori jika dimisalkan minimum support 3% dan minimum confidence 15% maka akan menghasilkan 12 rules dengan waktu prosesnya 1,609 detik , sedangkan jika minimum support 3% dan minimum confidence 45% maka akan menghasilkan 6 rules dengan waktu prosesnya 1,5761 detik. b. Untuk algoritma ct-pro jika dimisalkan minimum support 3% dan minimum
BAB 5
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Berdasarkan hasil pengujian yang telah dilakukan maka dapat diperoleh kesimpulan sebagai berikut :
1. Apabila semakin kecil nilai nilai minimum support atau minimum confidence yang diberikan maka waktu proses yang dibutuhkan lebih lama, demikian sebaliknya apabila diberikan nilai yang lebih besar.
2. Dari hasil perbandingan pengujian antara algoritma apriori dan algoritma ct-pro dapat diperoleh kesimpulan bahwa algoritma ct-pro memiliki waktu proses yang lebih singkat dibandingkan algoritma apriori.
3. Berdasarkan pengujian yang telah dilakukan dan dimisalkan bila nilai support 5% dan nilai confidence 50% pada kegiatan ekspor maka dapat diperoleh kesimpulan bahwa komoditas Kayu Karet merupakan salah satu komoditas ekspor yang memiliki frekuensi tertinggi sebesar 70,58% dengan negara tujuan ekspor terbesarnya adalah Malaysia. Maka, berdasarkan hal tersebut dapat membantu instansi dalam mengetahui jenis-jenis komoditas unggulan dan juga dapat membantu instansi apabila ingin membuat laporan tahunan.
5.2 Saran
Penelitian yang dilakukan masih jauh dari kata sempurna, oleh karena itu penulis mengharapkan saran dari segala pihak untuk memperoleh kesempurnaan. Berdasarkan penelitian, saran yang dapat penulis sampaikan yaitu :
1. Dapat membuat sistem perbandingan yang lebih baik dan dapat membuat grafik secara langsung dari hasil yang diperoleh.
BAB 2
TINJAUAN PUSTAKA
Pada tinjauan pustaka ini membahas tentang landasan teori yang medukung pembahasan yang berhubungan dengan sistem yang akan dibuat.
2.1 Data Mining
Data mining adalah kegiatan menemukan pola yang menarik dari data dalam jumlah besar dimana data tersebut dapat disimpan dalam bentuk database, data warehouse, atau penyimpanan informasi lainnya. Data mining berkaitan dengan bidang ilmu– ilmu lain, seperti database system, data warehousing, statistik, machine learning,
information retrieval, dan komputasi tingkat tinggi. Selain itu, data mining didukung
oleh ilmu lain seperti neural network, pengenalan pola, spatial data analysis, image
database, signal processing (Han,et al., 2006). Data mining adalah proses
menganalisa data dari perspektif yang berbeda dan menyimpulkannya menjadi informasi-informasi penting yang dapat dipakai untuk meningkatkan keuntungan, memperkecil biaya pengeluaran, atau bahkan keduanya.
Data mining dapat disebut sebagai proses untuk menemukan korelasi atau pola dari ratusan atau ribuan field dari sebuah relasional database yang besar dan menggunakan teknologi pengenalan pola seperti yang terdapat pada teknik-teknik di statistika dan matematika (Larose,2005). Data mining juga disebut sebagai serangkaian proses untuk menemukan suatu pengetahuan atau informasi yang selama ini tidak diketahui dari data berskala besar dan sering juga disebut sebagai knowledge
discovery in database (KDD) (Santosa,2007). KDD adalah kegiatan yang meliputi
yang sudah mapan terlebih dahulu. Karakteristik data mining(Wirdasari& Ahmad.2011) sebagai berikut:
1. Data miningberguna untuk menemukan penemuan sesuatu yang pola data tertentu yang tersembunyi dan tidak diketahui sebelumnya.
2. Data mining biasa menggunakan data yang berukuran besar yang tersimpan dalam suatu basis data. Biasanya data yang besar digunakan data mining berguna untuk membuat keputusan yang kritis, terutama dalam strategi.
Berikut ini merupakan beberapa tahapan dalam data mining sebagai berikut:
Knowledge
Evaluation & Presentation
Data Mining
Selection& Transformation patterns
Cleaning & Integration data
warehouse
database flat file
Gambar 2.1 Tahapan Data Mining(Han, et al., 2006)
1. Pembersihan Data (DataCleaning)
Pembersihan data merupakan proses menghilangkan noise dan data yang tidak konsisten atau data tidak relevan. Pada umumnya data yang diperoleh, baik dari
database suatu perusahaan maupun hasil eksperimen, memiliki isian-isian yang tidak
sempurna seperti data yang hilang, data yang tidak valid atau juga hanya sekedar salah ketik. Selain itu, ada juga atribut-atribut data yang tidak relevan dengan hipotesa data