Perbandingan Algoritma Apriori Dan Algoritma CT-Pro Pada Komoditas Ekspor Dan Impor
79
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());
$delete2 = mysql_query("DELETE FROM hasil_kombinasi") or die (mysql_error()); $delete3 = mysql_query("DELETE FROM hasil_support") or die (mysql_error()); $delete4 = mysql_query("DELETE FROM hasil_akhir_kombinasi") or die (mysql_error());
(2)
$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'")
(3)
81
if(mysql_num_rows($sql_cek_count)){ echo '';
} else{
$insert_count = mysql_query("INSERT INTO gabung_relasi VALUES ('','$item_gabung', '$count_gabung','1')");
} } ?> <?php $i++; } ?>
• 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){
(4)
$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;
while($data=mysql_fetch_array($TRecord)){ ?>
(5)
83
<?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
$TRecord = mysql_query("SELECT * FROM kombinasi_gabung order by id_komoditas asc ") or die(mysql_error());
(6)
$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)){
echo ''; } else {
(7)
85
$sql_insert_count = mysql_query("INSERT INTO hasil_kombinasi values ('', '$id_komoditas2', '$id_negara2','$num_jum_relasi')") or die (mysql_error());
}
} ?></td> </tr> <?php $j++; }?>
• Proses Pencarian L2 <?php
$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>
(8)
$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)){
echo ''; } else {
(9)
87
$insert_support = mysql_query("INSERT INTO hasil_support VALUES ('','$id_komoditas3','$id_negara3','$hasil_num_relasi')");
} } ?></td> </tr> <?php $j++;
}?>
• 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
(10)
$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++;
(11)
89
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'] . "'");
(12)
echo "Jika " . $array_nama_komoditas['nama_komoditas'] . " maka " . $array_nama_negara['nama_negara'];?></td>
<td><?php echo $data['hasil_confidence'];?></td>
</tr> <?php $j++; ?>
<?php } ?> </table> <br> <?php
$time = microtime(); $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>
</div> </div> </div> </div>
(13)
91
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());
$delete3 = mysql_query("DELETE FROM frequent_negara")or die(mysql_error()); $delete4 = mysql_query("DELETE FROM hasil_ctpro")or die(mysql_error()); $delete5 = mysql_query("DELETE FROM kombinasi_ctpro")or die(mysql_error());
(14)
$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){
(15)
93
$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);
(16)
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
id_komoditas='" . $array_komoditas['item_gabung'] . "' ORDER BY id_relasi_impor ASC LIMIT $jum_transaksi ");
(17)
95
$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") ;
(18)
$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");
(19)
97
$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
(20)
} }
} }
• 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);
$hasil_total = ($num_komoditas2 / $num_komoditas) * 100;
(21)
99
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()); }
}
}
(22)
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;
while($data=mysql_fetch_array($TRecord)){ ?>
(23)
101
<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
(24)
$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>
</div> </div> </div> </div>
(25)
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
(26)
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
(27)
16
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.
Diagram fishbone merupakan suatu alat visual untuk mengidentifikasi, mengeksplorasi, dan secara grafik menggambarkan secara detail semua penyebab yang berhubungan dengan suatu permasalahan. Konsep dasar dari diagram fishbone adalah permasalahan mendasar diletakkan pada bagian kanan dari diagram atau pada bagian kepala dari kerangka tulang ikannya(Asmoko,2013). Penyebab permasalahan
(28)
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
Material Machine
Method
menghasilkan sebuah pengetahuan ataupun
informasi baru Database
yang besar Metode mining
belum ada
Database belum terstruktur
Ingin efisiensi data Aplikasi yang
belum tersedia
Gambar 3.1 Diagram Ishikawa untuk analisis masalah
3.2 Analisis Data
Analisis data yang dilakukan terhadap data yang telah terkumpul dilakukan berdasarkan teknik aturan asosiasi dengan beberapa iterasi atau langkah-langkah. Data yang diambil sebagai bahan acuan dalam perancangan sistem yaitu data komoditas ekspor yang diperoleh dari instansi BBKP Belawan pada bulan Januari 2013 dalam jangka sepuluh hari dari tanggal 2 Januari 2013 hingga 15 Januari 2013 dengan total data sebanyak 200, dapat dilihat pada Tabel 3.1. Data tersebut merupakan data yang mewakili keseluruhan data komoditas selama 3 bulan.
(29)
18
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
Kopi Biji-Amerika
Serikat E20
Kelapa Parut-Polandia
03/01/2013 E21 Karet Lembaran-India 03/01/2013 E31
Pinang Biji-Sri Lanka
E22 Getah Pinus-Cina E32
Karet Lembaran-Argentina
E23
Kulit Kayu
Manis-Belanda E33
Pinang Biji-Bangladesh
E24 Pinang Biji-Pakistan E34 Sapu Lidi-Pakistan
E25
Kopi Biji-Amerika
Serikat E35 Kayu Manis-Rusia
E26
Minyak Sawit-Sierra
Leone E36 Kopi Biji-Inggris
E27 Kopi Biji-Taiwan E37
Minyak Sawit-Vietnam
E28
Kulit Kayu
Manis-Afrika Selatan E38 Kopi Biji-Jepang
E29 Kakao Biji-Malaysia E39
Minyak Sawit-Vcina
E30 Kelapa Parut-Rusia E40
Karet Lembaran-Cina
04/01/2013 E41
Kulit Kayu
Manis-Belanda 04/01/2013 E51
Pinang Biji-Bangladesh
E42
Kulit Kayu
Manis-Jerman E52
Minyak Sawit-Yaman
E43
Kulit Kayu
Manis-Portugal E53
Karet Lempengan-Taiwan
(30)
Tabel 3.1 Data Ekspor (Lanjutan)
Tgl Ekspor
ID
Ekspor Data Ekspor Tgl Ekspor
ID
Ekspor Data Ekspor
04/01/2013
E44
Kulit Kayu Manis-Amerika Serikat
04/01/2013
E54
Karet Lempengan-Cina
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
Karet Lembaran-India
Kopi Biji-Amerika
Serikat E60
Karet Lempengan-Amerika Serikat
07/01/2013 E61 Kopi Biji-Singapura 07/01/2013 E71 Minyak Sawit-Cina
E62 Kayu Karet-Malaysia E72 Minyak Sawit-Haiti
E63 Wood Flooring-Cina E73 Kopi Biji-Australia
E64
Kopi Biji-Amerika
Serikat E74
Kayu Manis-Thailand
E65 Pinang Biji-Pakistan E75
Karet Lembaran-Cina
E66
Karet
Lempengan-Brasil E76
Kayu Karet-Malaysia
E67
Pinang
Biji-Bangladesh E77 Sapu Lidi-Malaysia
E68 Kayu Karet-Cina E78 Kayu Karet-Cina
E69 Karet Lempengan-Cina E79 Kopi Biji-Irlandia
E70 Minyak Sawit-Siria E80
Sayuran Kubis-Taiwan
08/01/2013 E81 Pinang Biji-Pakistan 08/01/2013 E91
Kayu Manis-Malaysia
E82
Kopi Biji-Amerika
Serikat E92
Pinang Biji-Bangladesh
E83
Karet Lembaran-Afrika
Selatan E93 Minyak Sawit-Haiti
E84 Minyak Sawit-Pakistan E94 Karet
Lembaran-Taiwan
E85 Pinang Biji-Pakistan E95
Karet Lembaran-India
E86 Kopi Biji-Singapura E96
Karet Lembaran-Cina
E87 Minyak Sawit-Cina E97
Kayu Karet-Malaysia
(31)
20
Tabel 3.1 Data Ekspor (Lanjutan)
Tgl Ekspor ID
Ekspor Data Ekspor Tgl Ekspor
ID
Ekspor Data Ekspor
08/01/2013 E88 Wood Flooring-Amerika Serikat 08/01/2013 E98 Karet Lembaran-Taiwan E89 Wood
Flooring-Malaysia E99
Wood Flooring-Jepang
E90 Karet Lempengan-Cina E100 Kopi Biji-Kanada
09/01/2013 E101 Minyak Sawit-Algeria 09/01/2013 E111
Wood Flooring-Meksiko
E102 Sayuran Kubis-Taiwan E112
Pinang Biji-Pakistan
E103 Pinang Biji-Pakistan E113
Wood Flooring-Malaysia
E104 Minyak Sawit-Cina E114
Kulit Kayu Manis-Thailand
E105 Sapu Lidi-Pakistan E115
Kulit Kayu Manis-Libanon
E106
Kopi Biji-Amerika
Serikat E116 Damar Batu-India
E107
Kulit Kayu
Manis-Republik Dominika E117
Damar Batu-Sri Lanka
E108
Kulit Kayu
Manis-Brasil E118 Kopi Biji-Swedia
E109 Minyak Sawit-Cina E119
Kulit Kayu manis-Meksiko
E110
Karet
Lempengan-Afrika Selatan E120
Karet Lembaran-India
10/01/2013 E121
Kopi Biji-Korea
Selatan 10/01/2013 E131
Sayuran Kubis-Taiwan
E122
Kopi Biji-Amerika
Serikat E132
Sayuran Kubis-Taiwan
E123 Sapu Lidi-Pakistan E133 Kopi Biji-Jerman
E124
Minyak Sawit-Sierra
Leone E134 Kopi Biji-Malaysia
E125 Pinang Biji-Pakistan E135
Kakao Biji-Malaysia
E126
Minyak Sawit-Sierra
Leone E136
Pinang Biji-Pakistan
E127 Minyak Sawit-Turki E137
Pinang Biji-Bangladesh
(32)
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
Pinang Biji-Pakistan
E143
Kopi Biji-Amerika
Serikat E153 Minyak Sawit-Siria
E144 Minyak Sawit-Cina E154
Karet Lembaran-Cina
E145 Kayu Karet-Malaysia E155 Minyak Sawit-Siria
E146 Pinang Biji-Pakistan E156 Kulit Kayu
Manis-Thailand
E147 Sayuran Kubis-Taiwan E157 Karet
Lembaran-Amerika Serikat
E148 Minyak Sawit-Cina E158
Karet Lembaran-Cina
E149 Pinang Biji-Pakistan E159
Karet Lembaran-India
E150
Kopi Biji-Amerika
Serikat E160
Karet Lempengan-Cina
14/01/2013 E161
Kopi Biji-Amerika
Serikat 14/01/2013 E171
Minyak Sawit-Pakistan
E162 Kopi Biji-Singapura E172
Minyak Sawit-Algeria
E163
Kopi Biji-Amerika
Serikat E173
Minyak Sawit-Algeria
E164 Karet Lembaran-Cina E174
Karet Lembaran-Cina
E165
Pinang
Biji-Bangladesh E175
Minyak Sawit-Algeria
E166 Kopi Biji-Jerman E176 Kulit Kayu
Manis-Amerika Serikat
E167 Kopi Biji-Belanda E177
Minyak Sawit-Algeria
E168 Kopi Biji-Inggris E178 Kopi Biji-Taiwan
E169 Pinang Biji-Pakistan E179
Kayu Karet-Malaysia
E170
Pinang
(33)
22
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
E182
Kopi Biji-Amerika
Serikat E192 Kopi Biji-Malaysia
E183 Minyak Sawit-Cina E193
Pinang Biji-Pakistan
E184
Kopi Biji-Amerika
Serikat E194
Karet Lembaran-Cina
E185 Kopi Biji-Singapura E195
Sayuran Kubis-Taiwan
E186 Kopi Biji-Australia E196 Kopi Biji-Jerman
E187 Kopi Biji-Singapura E197
Sayuran Kubis-Taiwan
E188 Kakao Biji-Malaysia E198
Kayu Karet-Malaysia
E189 Pinang Biji-Pakistan E199 Minyak Sawit-Cina
E190 Kopi Biji-Singapura E200
Kayu Karet-Malaysia
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
memperoleh nilai support dari masing-masing item terlebih dahulu, berikut ini merupakan penjelasan lebih lanjut dari flowchart apriori.
(34)
Min Support dan Min Confidence
Support(a) = (jumlah transaksi a / total transaksi) * 100%
Proses Pembuatan tabel C1
Tabel C1 terbentuk
If Support >= min Support Y T Tabel L1 terbentuk Proses Pembuatan Tabel C2
Support =( jumlah transaksi mengandung a
dan b / total transaksi) * 100%
Tabel C2 terbentuk
If Support >= min Support Y T P1 Start P1 Terbentuk Tabel Confidence L2
If confidence >= min confidence Tabel Aturan Asosiasi Kesimpulan hasil asosiasi End Y T Tabel L2 terbentuk 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%
(35)
24
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
Karet Lembaran 20/200 * 100% = 10 % Kayu Karet 15/200 * 100% = 7,5 % Kakao Biji 5/200 * 100% = 2,5 % Ubi Jalar 2/200 * 100% = 1 %
Kopi Biji 48/200 * 100% = 24 %
Pinang Biji 24/200 * 100% = 12 %
Gambir 1/200 * 100% = 0,5 %
Sapu Lidi 5/200 * 100% = 2,5 %
Kulit Kayu Manis 17/200 * 100% = 8,5 % Kelapa Parut 2/200 * 100% = 1 % Getah Pinus 1/200 * 100% = 0,5 % Minyak Sawit 31/200 * 100% = 15,5 % Kayu Manis 3/200 * 100% = 1,5 % Wood Flooring 8/200 * 100% = 4 % Karet Lempengan 9/200 * 100% = 4,5 % Sayuran Kubis 7/200 * 100% = 3,5 % Damar Batu 2/200 * 100% = 1 %
India 7/200 * 100% = 3,5 %
(36)
Tabel 3.2 C1 (Kandidat 1-itemset)(Lanjutan)
Itemset Support
Cina 32/200 * 100% = 16 %
Singapura 8/200 * 100% = 4 %
Jepang 3/200 * 100% = 1,5 %
Amerika Serikat 21/200 * 100% = 10,5 %
Pakistan 22/200 * 100% = 11 %
Kanada 3/200 * 100% = 1,5 %
Korea Selatan 3/200 * 100% = 1,5 %
Republik Dominika 3/200 * 100% = 1,5 %
Jerman 5/200 * 100% =2,5 %
Australia 3/200 * 100% = 1,5 %
Polandia 1/200 * 100% = 0,5 %
India 7/200 * 100% = 3,5 %
Malaysia 22/200 * 100% = 11 %
Cina 32/200 * 100% = 16 %
Belanda 3/200 * 100% = 1,5 %
Sierra Leone 3/200 * 100% = 1,5 %
Taiwan 13/200 * 100% = 6,5 %
Afrika Selatan 3/200 * 100% = 1,5 %
Rusia 2/200 * 100% = 1 %
Sri Lanka 2/200 * 100% = 1 %
Argentina 1/200 * 100% = 0,5 %
Bangladesh 7/200 * 100% = 3,5 %
Inggris 2/200 * 100% = 1 %
Vietnam 2/200 * 100% = 1 %
Portugal 1/200 * 100% = 0,5 %
Thailand 5/200 * 100% = 2,5 %
Yaman 1/200 * 100% = 0,5 %
Brasil 2/200 * 100% = 1 %
Siria 5/200 * 100% = 2,5 %
(37)
26
Itemset Support
Haiti 2/200 * 100% = 1 %
Irlandia 1/200 * 100% = 0,5 %
Algeria 5/200 * 100% = 2,5 %
Meksiko 2/200 * 100% = 1 %
Swedia 1/200 * 100% = 0,5 %
Turki 2/200 * 100% = 1 %
Perancis 1/200 * 100% = 0,5 %
Libanon 1/200 * 100% = 0,5 %
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 %
Cina 32/200 * 100% = 16 %
Kopi Biji 48/200 * 100% = 24 %
Cina 32/200 * 100% = 16 %
Minyak Sawit 31/200 * 100% = 15,5 % Pinang Biji 24/200 * 100% = 12 %
Malaysia 22/200 * 100% = 11 %
Pakistan 22/200 * 100% = 11 %
Amerika Serikat 21/200 * 100% = 10,5 % Karet Lembaran 20/200 * 100% = 10 % Kulit Kayu Manis 17/200 * 100% = 8,5 %
(38)
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%
(39)
28
Itemset Support Count Support
Minyak Sawit, Amerika Serikat 0 0/200 * 100% = 0%
Minyak Sawit, Pakistan 1 1/200 * 100% = 0,5%
Minyak Sawit, Taiwan 0 0/200 * 100% = 0%
Pinang Biji, Malaysia 0 0/200 * 100% = 0%
Pinang Biji, Cina 0 0/200 * 100% = 0%
Pinang Biji, Amerika Serikat 0 0/200 * 100% = 0%
Pinang Biji, Pakistan 17 17/200 * 100% = 8,5%
Pinang Biji, Taiwan 0 0/200 * 100% = 0%
Karet Lembaran, Malaysia 0 0/200 * 100% = 0%
Karet Lembaran, Cina 10 10/200 * 100% = 5%
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%
Kulit Kayu Manis, Pakistan 0 0/200 * 100% = 0%
Kulit Kayu Manis, Taiwan 0 0/200 * 100% = 0%
Kayu Karet, Malaysia 8 8/200 * 100% = 4%
Kayu Karet, Cina 4 4/200 * 100% = 2%
Kayu Karet, Amerika Serikat 0 0/200 * 100% = 0%
Kayu Karet, Pakistan 0 0/200 * 100% = 0%
Kayu Karet, Taiwan 0 0/200 * 100% = 0%
Langkah 4 : Menentukan L2
Berdasarkan Tabel 3.4 maka langkah selanjutnya yaitu penentuan nilai L2 = {large
2-itemset} dengan minimum support ≥ 5 %. Nilai-nilai support pada Tabel 3.4 yang lebih besar atau sama dengan 5% adalah nilai L2 ( Large 2-itemset) seperti terlihat pada Tabel 3.5.
(40)
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%
(41)
30
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
Pada tahapan ini akan dilakukan analisis asosiasi dengan algoritma ct-pro dengan perancangan flowchart ct-pro dapat dilihat pada Gambar 3.3. Dari flowchart tersebut dapat diuraikan lebih jelas proses asosiasi dari algoritma ct-pro, dimana terlebih dahulu ditentukan nilai minimum support dan nilai minimum confidence. Kemudian dari data tabel 3.1 data kegiatan ekspor akan dihitung frekuensi komoditas dan frekuensi negara. Apabila frekuensi kemunculan setiap item lebih besar dari nilai minimum yang ditentukan maka data tersebut termasuk sebagai frequent global, berikut ini merupakan penjelasan lebih lanjut dari flowchart ct-pro.
(42)
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
Tampil hasil confidence
Aturan asosiasi
End Y
T
Y
T
Y
T Start
(43)
32
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
Index Item Count
1 Kopi Biji 48
2 Cina 32
3 Minyak Sawit 31
4 Pinang Biji 24
5 Malaysia 22
6 Pakistan 22
7 Amerika Serikat 21
8 Karet Lembaran 20
9 Kulit Kayu Manis 17
10 Kayu Karet 15
11 Taiwan 13
12 Karet Lempengan 9
13 Wood Flooring 8
14 Singapura 8
15 Sayuran Kubis 7
16 India 7
17 Bangladesh 7
18 Kakao Biji 5
19 Sapu Lidi 5
20 Jerman 5
21 Thailand 5
22 Siria 5
(44)
Tabel 3.8 Frequent Item (Lanjutan)
Index Item Count
24 Kayu Manis 3
25 Jepang 3
26 Kanada 3
27 Korea Selatan 3
28 Republik Dominika 3
29 Australia 3
30 Belanda 3
31 Sierra Leone 3
32 Afrika Selatan 3
33 Ubi Jalar 2
34 Kelapa Parut 2
35 Damar Batu 2
36 Rusia 2
37 Sri Lanka 2
38 Inggris 2
39 Vietnam 2
40 Brasil 2
41 Haiti 2
42 Meksiko 2
43 Turki 2
44 Gambir 1
45 Getah Pinus 1
46 Polandia 1
47 Argentina 1
48 Portugal 1
49 Yaman 1
50 Irlandia 1
51 Swedia 1
(45)
34
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
1 Kopi Biji 48
2 Cina 32
3 Minyak Sawit 31
4 Pinang Biji 24
5 Malaysia 22
6 Pakistan 22
7 Amerika Serikat 21
8 Karet Lembaran 20
9 Kulit Kayu Manis 17
10 Kayu Karet 15
11 Taiwan 13
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
Kopi Biji, Cina, Minyak Sawit, Pinang Biji, Malaysia, Pakistan, Amerika Serikat, Karet Lembaran, Kulit Kayu Manis, Taiwan
(46)
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
Index Item Count
1 Kopi Biji 10
2 Cina 10
3 Pinang Biji 10
4 Pakistan 10
5 Amerika Serikat 10
6 Karet Lembaran 10
7 Minyak Sawit 9
8 Malaysia 9
9 Taiwan 9
10 Kulit Kayu Manis 8
(47)
36
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
Dalam proses mining Global Item Tabel yang ada diurutkan berdasarkan dari item frekuensi yang terkecil hingga terbesar. Pada tahapan ini, penulis mengambil contoh dari data Pakistan yang merupakan data terkecil ke delapan berdasarkan Global Item
(48)
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
8 Malaysia 9 3 Pinang Bij 1 8 Malaysia 1
3 Pinang Biji 8
7 Minyak Sawit 9
3 Pinang Biji 1
2 Cina 10
1 Kopi Biji 10
Local Item Tabel Global Item
(49)
38
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
(50)
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
Pada DFD level 0 terjadi proses masukan dan keluaran (input/output) berupa data login, data negara, data komoditas, data relasi, data minimum support dan data minimum confidence yang dapat dilihat seperti pada Gambar 3.7.
(51)
40
User
P0 Perbandingan Algoritma Apriori dan
Algoritma CT-Pro pada Komoditas Ekpor dan Impor Data Login
Data Negara Data Komoditas Data Relasi Data Min Support Data Min Confidence
Info Login Info Negara Info Komoditas Info Relasi Info Min Support Info Min Confidence 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
Dari DFD Level-0 tersebut diatas, proses input/output sistem dapat dikembangkan lagi seperti terlihat pada Gambar 3.8.
(52)
P1 Login
User
Login Data Login
P2 Komoditas Komoditas
Data Komoditas
P3 Negara Negara
Data Negara P4 Relasi Relasi Ekspor Relasi Impor Data Relasi Data Relasi Info Relasi Info Negara Info Login Info Komoditas P5 Apriori P6 CT-Pro Info Relasi
Info Relasi Ekspor
Info Relasi Ekspor Info Relasi Impor
Info Relasi Impor Data Negara Info Negara Data Komoditas Info Komoditas Data Login Info Login Data Relasi Info Relasi
Data Min Support Data Min Confidence
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
Dari DFD Level-1 tersebut diatas, proses P4 Relasi dapat dikembangkan menjadi dua bagian yaitu Relasi Ekspor untuk data ekspor seperti terlihat pada Gambar 3.9 dan Relasi Impor untuk data impor seperti terlihat pada Gambar 3.10.
(53)
42
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
Dari DFD Level-1 tersebut diatas, proses P5 Apriori dapat dikembangkan lagi seperti terlihat pada Gambar 3.11.
(54)
P5.1 Cari C1 dan L1
User
Kombinasi_Gabung Data Min Support
Data Relasi
Info Hasil C1 dan L1
P5.2 Cari C2
P5.3 Cari L2 Hasil akhir_Kombinasi Data Hasil L2
Info Hasil L2
Info Hasil L1
Info Hasil C2
P5.4 L2 dengan nilai
Confidence Info 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
Dari DFD Level-1 pada Gambar 3.8, proses P6 CT-Pro dapat dikembangkan lagi seperti terlihat pada Gambar 3.12.
(55)
44
P6.1 Cari
Frequent item Gabung_CTPro
User
Data Komoditas Data Negara
Data Relasi Data Min Support
Data Komoditas Data Negara
Data Relasi Data Min Support
Info Frequent item Info Frequent item
P6.2 Buat CFP Tree
Data Ekspor/Impor berdasarkan Frequent Item
P6.3 Cari Local Frequent
Item
Gobal CFP Tree
P6.4 Buat Local CFP Tree P6.5 Tentukan Frequent Pattern
Local Item Table
Local CFP Tree
Frequent Komoditas Frequent Negara Data Komoditas Data Relasi Data Min Confidence Info Frequent Komoditas
Data Negara Data Relasi Data Min Confidence
Info Frequent Komoditas Data Komoditas
Data Negara Data Relasi Data Min Confidence
P6.6 Cari Kombinasi
Frequent
Hasil Frequent Pattern
Hasil_CT-Pro Data Komoditas
Data Negara Info Hasil_CT-Pro Info Hasil Aturan Asosiasi
(56)
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
(57)
46
3.3.2 Perancangan flowchart sistem
Perancangan alur kerja dari sistem yang dirancang dapat dilihat pada Gambar 3.15. Start Tampil halaman utama Komoditas? Negara? T Ekspor? T Apriori Ekspor T CT-Pro Ekspor T Impor? T Apriori Impor? T CT-Pro Impor T End T Tampil Data Komoditas Tampil Data Negara Tampil Data Ekspor Tampil Data Impor Y Y Y Y Y Y Y Y Tahapan algoritma apriori Tahapan algoritma apriori Tahapan algoritma ct-pro Tahapan algoritma ct-pro
(58)
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
(59)
48
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
(60)
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
(61)
50
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
(62)
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
(63)
52
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 :
1. Untuk mengisi username 2. Untuk mengisi Password 3. Untuk memulai sistem
(64)
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 Komoditas Negara Ekspor
Impor CT-Pro Ekspor
Apriori Ekspor
Apriori Impor CT-Pro Impor
Halaman Admin Welcome 1
2 3 4 5 6 7 8
9
10
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
8. Tombol untuk ke menu proses Apriori Impor 9. Tombol untuk ke menu proses CT-Pro Impor 10.Halaman Admin
(65)
54
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
3
5
6 2
1
4
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
Nama Komoditas
Deskripsi
Simpan
1
3 2
(66)
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
4. Menu untuk menambah negara 5. Menu delete komoditas
(67)
56
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
4
5
6
7
8
Gambar 3.22 Menu Ekspor Keterangan :
1. Daftar nomor kegiatan ekspor
(68)
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 Kode Relasi
Simpan
1
5 Nama Komoditas
Nama Negara Tanggal Ekspor
2
3
4
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
Menu Apriori Ekspor ini bermanfaat untuk proses mining dari sistem, dimana dalam menu ini dapat diisi nilai minimum support dan minimum confidence seperti terlihat pada Gambar 3.24 dan pada Gambar 3.25 merupakan hasil dari proses mining.
(69)
58
Apriori
Minimum Support
Minimum Confidence
Proses
1
3 2
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
Menu CT-Pro Ekspor ini bermanfaat untuk proses mining dari sistem, dimana dalam menu ini dapat diisi nilai minimum support dan minimum confidence seperti terlihat pada Gambar 3.26 dan pada Gambar 3.27 merupakan hasil dari proses mining.
(70)
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
Untuk perancangan tampilan Impor, Apriori Impor dan CT-Pro Impor tidak penulis tampilkan. Hal ini dikarenakan ketiga tampilan tersebut memiliki model tampilan yang sama dengan perancangan ekspor.
(71)
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
c. Adobe Dreamweaver CS6 d. Mozilla Firefox 14.0
(72)
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
Tampilan form utama pada Gambar 4.2 merupakan halaman utama dari sistem yang terdapat beberapa menu pilihan. Pada menu utama ini dapat terlihat beberapa menu pilihan yang dapat dipilih user untuk menjalankan sistem.
(73)
62
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
Pada menu komoditas terdapat pilihan menu input, menu edit dan menu delete. Menu delete berguna untuk menghapus data komoditas yang telah dimasukkan sebelumnya. Menu input berguna untuk memasukkan data komoditas ke dalam sistem, menu ini disimbolkan dengan lambang anak panah ke bawah dan tampilan untuk menu edit ini dapat dilihat pada Gambar 4.4.
(74)
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
(75)
64
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
Pada menu negara terdapat juga pilihan menu input, menu edit dan menu delete. Menu delete berguna untuk menghapus data negara yang telah dimasukkan sebelumnya. Menu input berguna untuk memasukkan data negara ke dalam sistem, menu ini disimbolkan dengan lambang anak panah ke bawah dan tampilan untuk menu input ini dapat dilihat pada Gambar 4.7.
(76)
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.
(1)
THE COMPARISON OF APRIORI ALGORITHM AND CT-Pro ALGORITHM ON EXPORT AND IMPORT COMMODITIES
ABSTRACT
To generate accurate information from a large-capacity data required a method of data mining . Association Rule mining is one of technique mining, it has a function to find associative rule between a combination of items . An associative rules can be determined by two parameters , namely support and confidence . Association Rule Mining has several algorithms , two of them Apriori algorithm and CT-Proalgorithm. Apriori algorithm search a frequent itemset by applying the iterative process. CT-Pro algorithm make Compressed FP - Tree ( CFP - Tree ), which uses a bottom - up approach in which the items in the item table and CFP - Tree is done scan of the smallest to the largest . In this research, compare between Apriori algorithm and CT-Pro algorithm to determine the frequency of most commodities by country of destination with its parameters is time . Results obtained CT-Pro algorithm has a shorter time in the mining process than the Apriori algorithm.
(2)
DAFTAR ISI
Hal
PERSETUJUAN ii
PERNYATAAN iii
UCAPAN TERIMA KASIH iv
ABSTRAK v
ABSTRACT vi
DAFTAR ISI vii
DAFTAR TABEL ix
DAFTAR GAMBAR x
BAB 1 PENDAHULUAN
1.1 Latar Belakang 1
1.2 Rumusan Masalah 2
1.3 Batasan Masalah 2
1.4 Tujuan Penelitian 3
1.5 Manfaat Penelitian 3
1.6 Metodologi Peneliti 3
1.7 Sistematika Penulisan 4
BAB 2 TINJAUAN PUSTAKA
2.1 Data Mining 6
2.2 Pengelompokkan Data Mining 9
2.3 Aturan Asosiasi (Assosiation Rule) 11
2.4 Metodologi Dasar Analisis Aturan Asosiasi 12
2.5 Algoritma Apriori 13
2.6 Algoritma CT-Pro 14
(3)
viii
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Masalah 16
3.2 Analisis Data 17
3.2.1 Algoritma Apriori 22
3.2.2 Algoritma CT-Pro 30
3.3 Perancangan Sistem 39
3.3.1 Data Flow Diagram (DFD) 39
3.3.2 Perancangan Flowchart Sistem 46
3.3.3 Perancangan Database 47
3.3.4 Perancangan Interface Sistem 52
BAB 4 IMPLEMENTASI
4.1 Implementasi 60
4.2 Pengujian Sistem 69
BAB 5 KESIMPULAN DAN SARAN
5.1 Kesimpulan 76
5.2 Saran 76
Lampiran
(4)
DAFTAR TABEL
Hal.
Tabel 3.1 Data Ekspor 18
Tabel 3.2 C1 (Kandidat 1-itemset) 24
Tabel 3.3 L1 (Large 1-itemset) 26
Tabel 3.4 C2 (Kandidat 2-itemset) 27
Tabel 3.5 L2 (Large 2-itemset) 29
Tabel 3.6 Confidence L2 29
Tabel 3.7 Aturan Asosiasi 29
Tabel 3.8 Frequent Item 32
Tabel 3.9 Frequent List 34
Tabel 3.10 Data Ekspor Berdasarkan Frequent List 34
Tabel 3.11 Global Item Tabel 35
Tabel 3.12 Tabel User 47
Tabel 3.13 Tabel Komoditas 48
Tabel 3.14 Tabel Negara 48
Tabel 3.15 Tabel Relasi 48
Tabel 3.16 Tabel Kombinasi Gabung 49
Tabel 3.17 Tabel Hasil Akhir Kombinasi 49
Tabel 3.18 Tabel Hasil Confidence 50
Tabel 3.19 Tabel Gabung CT-Pro 50
Tabel 3.20 Tabel Frequent Komoditas 51
Tabel 3.21 Tabel Frequent Negara 51
Tabel 3.22 Tabel Hasil CT-Pro 51
(5)
DAFTAR GAMBAR
Hal.
Gambar 2.1 Tahapan Data Mining 7
Gambar 3.1 Analisis Masalah Untuk Menghasilkan Informasi Baru 17
Gambar 3.2 Flowchart Algoritma Apriori 23
Gambar 3.3 Flowchart Algoritma CT-Pro 31
Gambar 3.4 Global CFP-Tree 36
Gambar 3.5 Local CFP-Tree 37
Gambar 3.6 Proses Pencarian Kombinasi 38
Gambar 3.7 DFD Level-0 Untuk Proses Membuat Perbandinga n Algoritma
Apriori dan Algoritma CT-Pro 40
Gambar 3.8 DFD Level-1 Untuk Proses Perbandingan Algoritma Apriori
Dan Algoritma CT-Pro 41
Gambar 3.9 DFD Level-2 Untuk Relasi Ekspor 42
Gambar 3.10 DFD Level-2 Untuk Relasi Impor 42
Gambar 3.11 DFD Level-2 Untuk Proses Algoritma Apriori 43 Gambar 3.12 DFD Level-2 Untuk Proses Algoritma CT-Pro 44 Gambar 3.13 DFD Level-3 Untuk Proses Olah Data Relasi Ekspor 45 Gambar 3.14 DFD Level-3 Untuk Proses Olah Data Relasi Impor 45
Gambar 3.15 Flowchart Sistem 46
Gambar 3.16 Form Login 52
Gambar 3.17 Halaman Utama 53
Gambar 3.18 Menu Komoditas 54
Gambar 3.19 Menu Edit Komoditas 54
Gambar 3.20 Menu Negara 55
Gambar 3.21 Menu Edit Negara 56
Gambar 3.22 Menu Ekspor 56
(6)
xi
Gambar 3.26 Menu CT-Pro Ekspor 59
Gambar 3.27 Analisis Dengan CT-Pro 59
Gambar 4.1 Form Menu Login 61
Gambar 4.2 Form Menu Utama 61
Gambar 4.3 Form Menu Komoditas 62
Gambar 4.4 Form Menu Input Komoditas 63
Gambar 4.5 Form Menu Edit Komoditas 63
Gambar 4.6 Form Menu Negara 64
Gambar 4.7 Form Menu Input Negara 65
Gambar 4.8 Form Menu Edit Negara 65
Gambar 4.9 Form Menu Ekspor 66
Gambar 4.10 Form Menu Input Ekspor 67
Gambar 4.11 Form Edit Ekspor 67
Gambar 4.12 Form Menu Input Parameter Apriori / CT-Pro 68
Gambar 4.13 Form Menu Hasil Asosiasi 68
Gambar 4.14 Pengujian 1 Untuk Proses Apriori 69
Gambar 4.15 Pengujian 1 Untuk Proses CT-Pro 69
Gambar 4.16 Pengujian 2 Untuk Proses Apriori 70
Gambar 4.17 Pengujian 2 Untuk Proses CT-Pro 70
Gambar 4.18 Pengujian 3 Untuk Proses Apriori 71
Gambar 4.19 Pengujian 3 Untuk Proses CT-Pro 71
Gambar 4.20 Pengujian 4 Untuk Proses Apriori 72
Gambar 4.21 Pengujian 4 Untuk Proses CT-Pro 72
Gambar 4.22 Pengujian 5 Untuk Proses Apriori 73
Gambar 4.23 Pengujian 5 Untuk Proses CT-Pro 73