PENERAPAN ALGORITME PREFIXSPAN DAN CLOSPAN UNTUK MENCARI POLA SEKUENSIAL PADA DATA PEMINJAMAN BUKU DI PERPUSTAKAAN IPB
DEVI MEISITA KHAIRUNNISA
DEPARTEMEN ILMU KOMPUTER FAKULTAS ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2013
PERNYATAAN MENGENAI SKRIPSI DAN SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA Dengan ini saya menyatakan bahwa skripsi berjudul Penerapan Algoritme Prefixspan dan Clospan untuk Mencari Pola Sekuensial pada Data Peminjaman Buku di Perpustakaan IPB benar karya saya denganarahan dari komisi pembimbing dan belum diajukan dalam bentuk apa pun kepada perguruan tinggi mana pun. Sumber informasi yang berasal atau dikutip dari karya yang diterbitkan maupun tidak diterbitkan dari penulis lain telah disebutkan dalam teks dan dicantumkan dalam Daftar Pustaka di bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember 2013 Devi Meisita Khairunnisa NIM G64114040
ABSTRAK DEVI MEISITA KHAIRUNNISA. Penerapan Algoritme Prefixspan dan Clospan untuk Mencari Pola Sekuensial pada Data Peminjaman Buku di Perpustakaan IPB. Dibimbingoleh IMAS SUKAESIH SITANGGANG dan BADOLLAHI MUSTAFA. Perpustakaan merupakan suatu fasilitas yang memiliki peranan penting dalam pendidikan. Dari data perpustakaan didapatkan berbagai informasi, salah satunya pola peminjaman buku oleh pengguna perpustakaan. Penelitian ini bertujuan untuk menentukan pola sekuensial pada data peminjaman buku di perpustakaan IPB dengan menggunakan algoritme Prefixspan dan Clospan. Penelitian ini menggunakandataset berukuran mulai dari 50 sampai 4,140 dengan minimum support mulai dari 5% sampai 15%. Hasil percobaan menunjukkan bahwa semakin besar dataset dan minimum support yang dipakai, algoritme Clospan memiliki kinerja lebih baik daripada Prefixspan. Selain itu, pola sekuensial yang dihasilkan kedua algoritme menunjukkan keterkaitan antar item yaitu kode 027 (kategori perpustakaan) dengan kode 820 (kategori sastra), buku dengan kode 631 (kategori manajemen pertanian) dengan kode 636 (kategori buku peternakan dan manajamen peternakan), buku dengan kode 631 dengan kode 658 (kategori manajemen, administrasi bisnis dan organisasi bisnis). Kata kunci: pola sekuensial, data transaksi sirkulasi perpustakaan, Prefixspan, Clospan
ABSTRACT DEVI MEISITA KHAIRUNNISA. Application of Prefixspan Algorithm and Clospan Algorithm for Searching Sequential Pattern Mining on Data of Books Loan in IPB’s Library. Supervised by IMAS SUKAESIH SITANGGANG dan BADOLLAHI MUSTAFA Library is an important facility in university. From the library data we can obtain various information, such as patterns of borrowing books by library users. This study aims to determine the sequential patterns of IPB’s library book loan data using two algorithms namely Clospan and Prefixspan. This study used the dataset with the size ranging from 50 to 4.140 and minimum support ranging from 5% to 15%. The experimental results show that the larger dataset and the minimum support used, Clospan algorithm has better performance than Prefixspan. In addition, the results of two sequential pattern algorithms which shows the relationships between the book code 027 (general libraries) with 820 (literature) books, 631 (farm management,agronomy, andhorticulture) books with book code 636 (animal husbandry and breeding in general), and 631 (farm management,agronomy, andhorticulture) to 658 (business management, administration, and commercial organization). Key words: sequential pattern, library circulation data, Prefixspan, Clospan
PENERAPAN ALGORITME PREFIXSPAN DAN CLOSPAN UNTUK MENCARI POLA SEKUENSIAL PADA DATA PEMINJAMAN BUKU DI PERPUSTAKAAN IPB
DEVI MEISITA KHAIRUNNISA
Skripsi sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer pada Departemen Ilmu Komputer
DEPARTEMEN ILMU KOMPUTER FAKULTAS ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2013
Judul Skripsi : Penerapan Algoritme Prefixspan dan Clospan untuk Mencari Pola Sekuensial pada Data Peminjaman Buku di Perpustakaan IPB Nama : Devi Meisita Khairunnisa NIM : G64114040
Disetujui oleh
Dr Imas S. Sitanggang, SSi, MKom. Pembimbing I
Drs Badollahi Mustafa, MLib Pembimbing II
Diketahui oleh
Dr Ir Agus Buono, MSi, MKom Ketua Departemen
Tanggal Lulus:
PRAKATA Puji dan syukur penulis panjatkan kepada Allah subhanahu wa ta’ala atas segala karunia-Nya sehingga karya ilmiah ini berhasil diselesaikan. Tema yang dipilih dalam penelitian yang dilaksanakan sejak bulan Juli 2013 ini ialah data mining, dengan judul Penerapan Algoritme Prefixspan dan Clospan untuk Mencari Pola Sekuensial pada Data Peminjaman Buku di Perpustakaan IPB. Terima kasih penulis ucapkan kepada Ibu Dr Imas Sukaesih Sitanggang, SSi, MKom dan Bapak Drs Badollahi Mustafa, MLib selaku pembimbing. Serta, Bapak Hari Agung Adrianto, SKom,MSi sebagai penguji. Selain itu, penulis ucapkan terima kasih kepada Bapak Feri yang telah membantu dalam pengumpulan data. Penghargaan penulis sampaikan kepada Bapak Philippe Fournier Viger yang telah membuat perangkat lunak Sequential Pattern Mining Framework (SPMF) dan Bapak Agus Anang, SKom yang telah membantu selama praproses data dan penulisan karya tulis ini. Ungkapan terima kasih juga disampaikan kepada ayah, ibu, Arina Pramudita, serta seluruh keluarga dan teman-teman Ilmu Komputer Angkatan 6, atas segala doa dan kasih sayangnya. Semoga karya ilmiah ini bermanfaat. Bogor, Desember 2013 Devi Meisita Khairunnisa
DAFTAR ISI DAFTAR TABEL
vi
DAFTAR GAMBAR
vi
DAFTAR LAMPIRAN
vi
PENDAHULUAN
1
Latar Belakang
1
Tujuan Penelitian
1
Manfaat Penelitian
2
Ruang Lingkup Penelitian
2
METODE
2
HASIL DAN PEMBAHASAN
5
Praproses
5
Penentuan pola sekuensial
7
Perbandingan kinerja Algoritme Prefixspan dan Clospan
9
Analisis Pola Sekuensial
17
SIMPULAN DAN SARAN
19
Simpulan
19
Saran
19
DAFTAR PUSTAKA
19
LAMPIRAN
18
RIWAYAT HIDUP
20
DAFTAR TABEL 1 Data transaksi perpustakaan 2 Jumlah pola sekuensial dan waktu eksekusi algoritme Prefixspan dan Clospan berdasarkan dataset dan minimum support 3 Pola sekuensial dengan urutan pola berbeda untuk dataset 50 pada minimum support 5%
3 10 18
DAFTAR GAMBAR 1 Tahapan penelitian 3 2 Tahapan praproses data 4 3 Perbandingan Clospan (■) dan Prefixspan (♦) berdasarkan minimum support dengan waktu eksekusi untuk dataset 50 12 4 Perbandingan Clospan (■) dan Prefixspan (♦) berdasarkan minimum support dengan waktu eksekusi untuk dataset 100 12 5 Perbandingan Clospan (■) dan Prefixspan (♦) berdasarkan minimum support dengan waktu eksekusi untuk dataset 500 12 6 Perbandingan Clospan (■) dan Prefixspan (♦) berdasarkan minimum support dengan waktu eksekusi untuk dataset 1,000 12 7 Perbandingan Clospan (■) dan Prefixspan (♦) minimum support dengan waktu eksekusi untuk dataset 2,000 12 8 Perbandingan Clospan (■) dan Prefixspan (♦) minimum support dengan waktu eksekusi untuk dataset 4,140 12 9 Perbandingan Clospan (■) dan Prefixspan (♦) berdasarkan jumlah dataset dengan waktu eksekusi untuk minimum support 5%Error! Bookmark not defined. 10 Perbandingan Clospan (■) dan Prefixspan (♦) berdasarkan jumlah dataset dengan waktu eksekusi untuk minimum support 6%Error! Bookmark not defined. 11 Perbandingan Clospan (■) dan Prefixspan (♦) jumlah dataset dengan waktu eksekusi untuk minimum support 7% 16 12 Perbandingan Clospan (■) dan Prefixspan (♦) jumlah dataset dengan waktu eksekusi untuk minimum support 8% 16 13 Perbandingan Clospan (■) dan Prefixspan (♦) berdasarkan jumlah dataset dengan waktu eksekusi untuk minimum support 10% 16 14 Perbandingan Clospan (■) dan Prefixspan (♦) jumlah dataset dengan waktu eksekusi untuk minimum support 15% 16
PENDAHULUAN Latar Belakang Perpustakaanmempunyai peranan penting dalam dunia pendidikan. Pengelolaan yang baik untuk memperbaiki layanan menjadi sebuah keharusan untuk menunjang proses belajar dan mengajar di lingkungan akademik. Salah satu proses dalam pengelolaan yang baik adalah pengambilan keputusan atau kebijakan yang tepat yang didasari dari informasi yang baik dan tepat pula. Informasi yang baik dapat digali dari data yang benar dan teknik pengggalian yang teruji. Salah satu data yang dapat digali dari perpustakaan adalah transaksi peminjaman buku pada perpustakaan. Teknologi penggalian informasi dari data dengan basis besar yang tersimpan atau yang lebih sering di kenal dengan data mining sudah mulai marak dikembangkan, didalami dan digunakan diberbagai bidang. Berbagai teknik/metode diajukan untuk mendapatkan hasil yang lebih akurat dan cepat. Analisis perbandingan kinerja algoritme dilakukan untuk mengetahui perbedaan kecepatan dan akurasi dari algoritme yang dibandingkan, sehingga dapat diperoleh kesimpulan dalam pemilihan algoritme untuk mendapatkan informasi yang lebih baik dan akurat. Teknik sequential pattern mining merupakan salah satu teknik data mining yang banyak diterapkan. Algoritme yang telah dikembangkandalamtekniktersebut, antara lain Prefixspan dan Clospan. Menurut Gregoriuset al. (2013) algoritme Clospan memiliki waktu eksekusi yang cepat pada data transaksi perpustakaan sehinggapada penelitian ini algoritme tersebut akan diterapkan. Pada penelitian inialgoritmePrefixspan dan Clospan akan diterapkan padadata transaksipeminjaman buku di perpustakaan IPB dari tahun 2003 hingga 2013. Kedua algoritme tersebut akan dibandingkan kinerja dan pola sekuensial yang dihasilkan. Perumusan Masalah Perumusan masalah dalam penelitian ini adalah bagaimana pola sekuensial pada data transaksi peminjaman buku perpustakaan ditentukan menggunakan algoritme Prefixspan dan Clospan dan algoritme manakah yang memberikan hasil terbaik. Tujuan Penelitian 1 2 3
Tujuan dari penelitian ini adalah: Menentukan pola sekuensial pada data transaksi perpustakaan menggunakan algoritme Prefixspan dan Clospan. Membandingkan kinerja dari algoritme Prefixspan dan Clospan dalam menemukanpola sekuensialpada data transaksi sirkulasi perpustakaan. Menganalisis pola sekuensial yang dihasilkan oleh algoritme Prefixspan dan Clospan.
2 Manfaat Penelitian 1 2 3 4 5
Penelitian ini diharapkan dapat memberikan manfaat sebagaiberikut: Sebagai referensi bagi pihak perpustakaan terkait algoritme terbaik yang dapat digunakan dalam mengolah data transaksi sirkulasi perpustakaan. Pihak perpustakaan dapat mengetahui pola peminjaman yang dilakukan anggota perpustakaan. Memudahkan pihak perpustakaan dalam penambahan stok buku. Memberikan rekomendasibukukepada pemustaka. Ruang Lingkup Penelitian
1 2
Penelitian ini memiliki ruang lingkup sebagai berikut: Data yang digunakan dalam penelitian ini merupakan data transaksi peminjaman buku perpustakaan IPB tahun 2003 sampai dengan 2013. Pola sekuensial dihasilkan dengan menggunakan perangkatlunak Sequential Pattern Mining Framework (SPMF) (Viger 2013).
METODE Data Perpustakaan Penelitian ini menggunakan data transaksi peminjaman buku di perpustakaan IPB tahun 2003 sampai dengan 2013 sebanyak 18,669 data. Data transaksi perpustakaan terdiri atas beberapa atribut, diantaranya nomor identitas, nama peminjam, kelas buku, judul buku, kondisi buku yang dipinjam, tanggal peminjaman, kode peminjaman, tanggal buku harus kembali, jenis buku,jenis peminjaman, operator transaksi buku, dan nomor registrasi buku. Pada penelitian ini atribut data yang digunakan adalah nomor identitas, kelas buku, dan tanggal peminjaman.Nomor identitas merupakan nomor unik yang dimiliki oleh pengunjung perpustakaan dan dapat berupa nomor induk mahasiswa. Kelas buku merupakan kategori buku. Pengelompokkan kelas buku pada perpustakaan IPB didasarkan pada bagan klasifikasi UDC (Universal Decimal Classification) seperti 630 yang menyatakan klasifikasi pertanian. UDC terdiri atas dua jenis angka, yaitu angka utama yang menyatakan subjek utama dan angka bantu yang merupakan angka khusus (dinyatakan dengan tanda atau symbol seperti .(titik) dan - (dash)). Tanggal peminjaman merupakan berupa tanggal transaksi peminjaman buku. Contoh data transaksiperpustakaanyang digunakandapatdilihatpadaTabel 1. Peralatan Penelitian Penelitian ini menggunakan spesifikasi perangkat keras dan lunak sebagai berikut: 1
Perangkat keras berupa komputer personal dengan spesifikasi
3 Tabel 1Data transaksiperpustakaan Nomor Identitas 99007 99007 5061971
mulai
KlS1 600 600 100
Kelas Tanggal KlS2 KLS3 650 650 05/01/2004 650 651 05/01/2004 150 155 16/05/2013
Dataset Dataset
Praproses Praproses
Penentuan Penentuan pola pola sekuensial sekuensial dengan dengan Prefixspan Prefixspan
Penentuan Penentuan pola pola sekuensial sekuensial dengan dengan Clospan Clospan
Selesai Selesai
Analisis Analisis Pola Pola Sekuensial Sekuensial
Perbandingan Perbandingan kinerja kinerja Clospan Clospan dan dan Prefixspan Prefixspan
Gambar 1Tahapan penelitian Prosesor Intel Pentium® Dual-Core CPU E5500 @ 2.80 GHz RAM 2 GB VGA Intel® G45/G43 Express Chipset 2
Perangkat lunak Windows 7 Ultimate 32-bit Operating System Javatmstandard edition versi 7 Sistem Manajemen Basis Data PostgreSQL versi 8.3.0 Perangkat lunak Sequential Pattern Mining Framework (SPMF) versi 0.94 untuk menentukan pola sekuensial dari data transaksi sirkulasi perpustakaan Tahapan Penelitian
Penelitian ini memiliki beberapa tahapan, diantaranya praproses data, dataset, penentuan pola sekuensial, perbandingan kinerja algoritme, dan analisis pola sekuensial. Tahapan penelitian yang dilakukan dapat dilihat pada Gambar 1.
4 1
Praproses Praproses dilakukan untuk membersihkan data dan membuat data yang ada menjadi pola sekuensial. Praproses terbagi ke dalam empat tahapan, yaitu transformasi data, seleksi data, pembersihan data, dan pembuatan data sekuensial yang dapat dilihat pada Gambar 2. Transformasi data merupakan suatu proses konversi perubahan data untuk diolah pada tahapan selanjutnya. Pembersihan data merupakan tahapan membuang data dari noise dan menyesuaikan data dengan format klasifikasi yang ada. Pembuatan data sekuensial merupakan tahapan pengurutan data berdasarkan nomor identitas dan waktu. Basis data CDS/ISIS
Data Sekuensial
Transformasi data
Seleksi data
Pembuatan data sekuensial
Pembersihan data
Gambar 2Tahapan praproses data 2
Dataset Dataset merupakan data hasil praproses yang telah diurutkan berdasarkan waktu atau lebih dikenal dengan data sekuensial. Dataset dihasilkan dari praproses kemudian disesuaikan kembali menjadi data sekuensial yang sesuai dengan format perangkat lunak SPMF. Pembuatan dataset dilakukan dengan sebuah program PHP sederhana yang menghasilkan pola sekuensial sebanyak 4,110 data. 3
Penentuan pola sekuensial dengan Prefixspan dan Clospan Pola sekuensial merupakan pola keterkaitan antar objek. Dalam penelitian ini pola untuk data perpustakaan dihasilkan menggunakan perangkatlunak Sequential Pattern Minning Framework (SPMF) (Viger2013). SPMF tidak hanya menghasilkan pola sekuensial, tetapi juga jumlah pola yang dihasilkan dan waktu eksekusi. 4
Perbandingan kinerja Algoritme Prefixspan dan Clospan Perbandingan kinerja diukur dengan membandingkan jumlah pola dan waktu eksekusi dari algoritme Prefixspan dan Clospan. Pada tahapan ini akan dianalisis hasil dari pengujian dan keterkaitan antara jumlah pola atau waktu eksekusi terhadap minimum support dan dataset. 5
Analisis pola sekuensial Analisis pola sekuensial merupakan tahap analisis faktor-faktor yang menjadi perbedaan dari pola sekuensial antara algoritme Prefixspan dan Clospan.
5
HASIL DAN PEMBAHASAN Praproses Praproses dilakukan melalui beberapa tahapan, yaitu transformasi data, seleksi data, pembersihan data, dan pembuatan data sekuensial. 1
Transformasi data Data perpustakaan yang didapatkan dari basis data CDS/ISIS memiliki format CIRC sedangkan untuk dapat diolah data tersebut harus ditransformasi ke dalam format xlsxuntuk dilakukan proses seleksi data dan pembersihan data terlebih dulu. Proses transformasi data dilakukan dengan dua tahapan, yaitu: a. Data diubah ke dalam format XML dengan menggunakan fasilitas konversi yang telah tersedia aplikasi CDS/ISIS. b. Data yang telah ditransformasi ke dalam format XML, kemudian ditransformasi kembali menjadi format xlsx dengan menggunakan Microsoft Excel. 2
Seleksi data Seleksi data merupakan suatu proses pemilihan atribut yang akan digunakan dalam percobaan. Pemilihan atribut didasarkan oleh kebutuhan dari algoritme Prefixspan dan Clospan. Algoritme Prefixspan dan Clospan membutuhkan masukan berupa data sekuensial. Data sekuensial dapat dibentuk oleh tiga atribut, yaitu nomor identitas, kelas buku, dan tanggal peminjaman. Kelas buku terdiri atas tiga tingkatan yaitu KLS1 (umum), KLS2 (sedang), dan KLS3 (khusus). Pada penelitian ini tingkatan yang akandigunakan adalah KLS3. KLS3 merupakan tingkatan yang paling khusus diantara tingkatan kelas yang lain sehingga diharapkan akan terbentuk pola sekuensial yang lebih spesifik dari segi tipe dan jenis buku. 3
Pembersihan data Atribut-atribut yang telah terpilih pada proses sebelumnya, kemudian dimasukkan ke dalam DBMS PostgreSQL untuk dilakukan proses pembersihan data. Pada proses pembersihan data awal, ditemukan 3,000 data invalid sehingga data mengandung noisedan perlu dilakukan praproses. Data invalid pada data tersebut mengandung tanda selain angka seperti . (titik), ‘ (kutip), dan – (strip). Proses pembersihan noise dilakukan dengan melakukan sebuah querydengan mengasumsikannoisesebagai angka ‘0’. Data yang telah terbebas dari noise tersebut kemudian dibandingkan dengan format bagan klasifikasi buku UDC. Pada data dengan atribut kelas buku ternyata masih ditemukan suatu ketidakkonsisten dengan format klasifikasi UDC. Ketidakkonsistenan terjadi pada kategori KLS1 dan KLS3. KLS1 yang seharusnya kategori umum, tetapi bernilai khusus dan dan sebaliknya KLS3 yang seharusnya kategori khusus tetapi data yang ada kategori umum.
6 Kekeliruan tersebut kemudian didiskusikan dengan pakar dari Perpustakaan IPB. Hasil diskusi menunjukkan bahwa memang terjadi kekeliruan pada kelas tersebut sehingga perlu dilakukan proses perbandingan antara KLS1 dan KLS3. Selanjutnya, proses query diterapkan kembali untuk menukar KLS3 dengan KLS1 dengan aturan jika KLS1 berisi kategori khusus dan KLS3 berisi kategori umum. Contoh kasusnya jika KLS1 bernilai 631, sedangkan KLS3 630, maka tukar nilai dari KLS3 menjadi KLS1. KLS3 akan bernilai 631 dan KLS1 akan bernilai 630. Dari hasil tersebut ternyata masih juga ditemukan 1,441 data yang tidak sesuai dengan klasifikasi UDC. Nilai kategori pada KLS1, KLS2, dan KLS3 masuk ke dalam kategori umum, padahal seharusnya KLS3 masuk ke dalam kategori khusus. Oleh karena itu, data yang tidak sesuai tersebut memerlukan proses penyesuaian data secara manual. Proses penyesuaian dilakukan dengan mencocokkan antara kelas data beserta judul buku dengan format pengklasifikasian UDC. 4
Pembuatan data sekuensial Sequential pattern miningmerupakan penambangan data yang telah diurutkan berdasarkan waktu (Han dan Kamber 2006). Dalam penelitian ini, pembuatan data sekuensial dilakukan dengan menggunakan sebuah program PHP. Program tersebut bekerja dengan dua tahapan, yaitu: a. Menggabungkan kategori kelas yang memiliki nomor identitas dan tanggal yang sama. Program ini bekerja dengan membandingkan kategori yang memiliki nomor identitas dan tanggal yang sama dan menuliskannya ke dalam sebuah file teks. Berikut potongan program tersebut. $cekquery=" SELECT DISTINCT k.nrp, k.tanggal, l.kategori as katbaru from ( select DISTINCT * FROM belajar.mentah2 )as k RIGHT JOIN ( SELECT distinct * FROM belajar.mentah2 ) as l on l.nrp=k.nrp and k.tanggal=l.tanggal ORDER BY k.nrp, k.tanggal ";
b.
Menggabungkan kategori kelas yang memiliki nomor identitas sama Program ini bekerja dengan membandingkan kategori yang memiliki nomor identitas yang sama dan menuliskannya ke dalam sebuah berkas teks. Berikut potongan program tersebut. for($i=1; $i<$numrow;$i++){ $nrp=$data[$i]['nrp'];
7 $kat=$data[$i]['katbaru']; $kata=$nrp.';'.$kat; if($data[$i]['nrp']==$data[$i-1]['nrp'] ) { $tanda=true; if($tanda) $kata=$kat; echo $kata; } else{ $tanda=false; echo $kata; }
echo "
";
}
c.
Membuat sesuai dengan format masukan SPMF Program ini bekerja dengan membandingkan panjang dari setiap item. Jika panjang item lebih dari 3 item tersebut akan ditambahkan -1 pada akhir item tersebut dan ketika suatu transaksi pada setiap item telah selesai dibandingkan pada setiap akhir transaksi akan diberi akhiran -2. Berikut potongan program tersebut. for($i=0; $i<$jml; $i++) { if($jml==1){ $str.=wordwrap($awal[0],3,' ', true); } else { if($i==$jml-1) $str.=wordwrap($awal[$i],3,' ', true); else $str.=wordwrap($awal[$i],3,' ', true).' -1 '; } } $str.='-2';
Ketiga program tersebut menghasilkan data sekuensial sebanyak 4.104 dalam format teks dengan masukan seperti 630 -1 -2. Angka 630 merepresentasikan tingkatan buku,-1 menunjukkan spasi, dan -2 menunjukkan akhir dari setiap data sekuensial. Penentuan pola sekuensial Penentuan pola sekuensial dilakukan dengan mencari frequent sequence. Frequent sequence merupakan kumpulan transaksi yang memiliki jumlah minimum support sama atau melebihi minimum support yang telah ditentukan sebelumnya (Han dan Kamber 2006). Pada penelitian ini algoritme Prefixspan dan Clospan akan diterapkan untuk menghasilkan pola sekuensial tersebut.
1
Algoritme Prefixspan Prefixspan merupakan algoritme yang memproyeksikan basis data dengan menerapkan konsep prefix dan postfix dalam menjalankan algoritmenya (Hanet
8 al.2000). Prefixspan menerapkan konsep depth first search yang bekerja dengan tiga tahapan, yaitu (Saputra dan Sulaiman 2006): a. Hitung panjang prefix data sekuensial dengan panjang 1. b. Bagi ruang pencarian berdasarkan prefixnya (pisahkan antara prefix dan postfix). c. Cari pola yang memenuhi minimum support berdasarkan ruang pencarian. Prefixspan akan memproyeksikan prefix dari item yang dimiliki sehingga ukuran proyeksi data akan semakin menyusut dan redundansi menjadi tereduksi (Hanet al. 2000).Berikut algoritme dari Prefixspan tersebut (Yan et al. 2003):
Comment [U1]: Numbering tidak perlu pakai titik a Hitung b Bagi
Input : A sequence s, projected DB Ds, and min_sup, α item, i new item Output: The frequent sequence set F. 1: insert s to F; 2: scan Ds once, find every frequent item α such that (a) s can be extended to (s <>i α) (b) s can be extended to (s <>s α) 3: if no valid α available then 4: return; 5: for each valid α do 6: Call Prefixspan(s <>i α, D s <>i α, min_sup, F); 7: for each valid α do 8: Call Prefixspan(s <>s α, D s <>sα, min_sup, F); 9: return;
2
Algoritme Clospan Clospan merupakan suatu algoritme penghasil pola sekuensial dengan metode efisiensi basis data (Yanet al. 2003). Clospan bekerja dengan dua tahapan, yaitu: a. Membangkitkanpola sekuensial dengan algoritme Prefixspan. b. Melakukan post-pruning. Pruning merupakan suatu proses efisiensi pola pada basis data. Pada Clospan pruning dilakukan dengan menggabungkan nodeyang memiliki prefix yang sama menjadi satu kesatuan. Clospan memiliki dua teknik pruning, yaitu backward subpatterndan backward super-pattern(Yan et al.2003). Berikut algoritme dari Clospan: Input : A sequence s, a projected DB Ds, and min_sup, α item, i new item Output: The prefix search lattice L. 1: Check whether a discover sequence s’ exist s.t. either s [ s’ or s’ [ s, and I(Ds) 2: if such super-pattern or sub-pattern exist then 3: modify the link in L, return; 4: else insert s into L; 5: Scan Ds once, find every frequent item α such that (a) s can be extended to (s <>i α),or
Comment [U2]:
9 (b) s can be extended to (s <>s α); 6: if no valid α available then 7: return; 8: for each valid α do 9: Call Clospan(s <>i α, D s <>i α, min_sup, L); 10: for each valid α do 11: Call Clospan(s <>s α, D s <>sα, min_sup, L); 12: return; 3
Penggunaan algoritme Prefixspan dan Clospan pada data peminjaman buku perpustakaan Sebelum dilakukan penerapan algoritme Prefixspan dan Clospan pada data transaksi perpustakaan,perlu dilakukan penentuan minimum supportdan datasetterlebih dulu. Penentuan minimum supportdan datasetakan berpengaruh terrhadap kinerja dari kedua algoritme nantinya. a.
Pemilihan minimum support Penentuan minimum support dipilih dengan melakukan percobaan berulangulang dengan minimum support secara progresif dimulai dari 0% sampai 100% dengan menggunakan perangkat lunak SPMF. Pemilihan minimum support dipilih dengan dasar terdapat perbedaan jumlah pola sekuensial yang dihasilkan oleh setiap dataset untuk setiap minimum support yang berbeda. Dari hasil beberapa kali percobaan didapatkan bahwa pada data dengan minimum supportdiatas 15% tidak ditemukan lagi pola sekuensial dan pola sekuensial yang dihasilkan oleh data dengan minimum support dibawah 5% tidak akurat karena pola sekuensial yang dihasilkan sangat banyak sehingga tidak ditemukan keterkaitan antar item. Oleh karena itu, minimum support di bawah 5% dan di atas 15% tidak dapat digunakan dalam pengujian. Minimum support yang digunakan adalah 5%, 6%, 7%, 8%, 10%, dan 15% untuk setiap dataset. Pada minimum support tersebut terlihat terdapat minimum support yang jaraknya signifikan nilainya, yaitu dari minimum support 10% ke 15%. Hal tersebut disebabkan olehminimum support tersebut tidak ditemukan perubahan jumlah pola sekuensial (jumlah pola sekuensial tetap).
b.
Pemilihan dataset Penentuan dataset dilakukan secara acak dengan mengelompokkan dataset menjadi beberapa jumlah dataset yaitu dataset 50, 100, 200, 300, 400, 500, 1,000, 1,500, 2,000, 2,500, 3,000, 3,500, dan 4,140. Pada penelitian ini yang akan dianalisis adalah dataset dengan jumlah 50, 100, 500, 1,000, 2,000, dan 4,140. Pemilihan dataset ini didasarkan oleh kemiripan minimum support pada setiap dataset. Perbandingan kinerja Algoritme Prefixspan dan Clospan Pada penelitian ini kinerja dari algoritme Prefixspan dan Clospan akan diuji berdasarkan kriteria dataset, minimum support, jumlah pola sekuensial, dan waktu eksekusi. Penelitian ini dilakukan dalam dua bentuk percobaan, yaitu:
Comment [U3]:
10 1
Hubungan antara dataset, minimum support, dan jumlah pola sekuensial Hubungan antara dataset, minimum support dan jumlah pola sekuensial perlu dianalisis lebih lanjut untuk melihat keterkaitan antara ketiga parameter sehingga akan terlihat tren pola sekuensialnya. Selanjutnya, pengujian dilakukan sebanyak tiga kali dengan dataset dan minimum support yang telah ditentukan sebelumnya 140 (detail waktu pengujian dapat dilihat pada Lampiran 1). Hasil percobaan tersebut dapat dilihat pada Tabel 2. Tabel 2Jumlah pola sekuensial dan waktu eksekusi algoritme Prefixspan dan Clospan berdasarkan dataset danminimum support
No
Minimum support(%)
Dataset
Jumlah pola sekuensial Prefixspan
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
5
6
7
8
10
50 100 500 1,000 2,000 4,140 50 100 500 1,000 2,000 4,140 50 100 500 1,000 2,000 4,140 50 100 500 1,000 2,000 4,140 50
34 10 13 11 12 11 15 6 12 10 9 5 15 5 10 6 7 4 6 4 9 4 3 3 4
Waktu (ms)
Clospan 21 10 13 11 12 11 15 6 12 10 9 5 8 5 10 6 7 4 6 4 9 4 3 3 4
Prefixspan 8 1 12 10 20 48 1 1 8 9 16 42 1 1 8 7 16 8 0 1 9 4 6 28 1
Clospan 6 2 8 10 19 49 2 2 8 7 30 17 1 1 6 7 8 38 1 1 5 4 5 9 3
11
No
Minimum support(%)
Dataset
Jumlah pola sekuensial Prefixspan
26 27 28 29 30 31 32 33 34 35 36
15
100 500 1,000 2,000 4,140 50 100 500 1,000 2,000 4,140
4 6 2 1 2 1 2 2 1 0 0
Waktu (ms)
Clospan 4 6 2 1 2 1 2 2 1 0 0
Prefixspan 1 7 3 6 28 1 1 2 3 6 7
Clospan 1 4 3 5 9 1 2 3 3 4 6
Hasil percobaan pada Tabel 2 menunjukkan bahwa kedua algoritme menghasilkan pola sekuensial dengan jumlah yang sama yaitu 34 dari 36 percobaan. Perbedaan jumlah pola kedua algoritme hanya didapatkan 2 percobaan. Perbedaan tersebut ditemukan untuk dataset 50 dengan minimum support 5% dan 7%. Pada dataset tersebut jumlah pola sekuensial Prefixspan lebih banyak daripada Clospan. Pada pengujian ini kedua algoritme menghasilkan pola sekuensial dengan presentase kemiripan yang sangattinggi. Hal tersebut diperkirakan karena setiap item pada dataset yang digunakan tidak memiliki keterkaitan yang kuat antara satu item dengan item yang lain sehingga dapat dikatakan setiap item berbeda satu sama lain.
2
Hubungan antara dataset, minimum support, dan waktu eksekusi Hubungan antara dataset, minimum support dan waktu eksekusi perlu dianalisis lebih lanjut untuk melihat keterkaitan antara ketiga parameter sehingga akanterlihat algoritme mana yang lebih cepat dalam menghasilkan pola sekuensial. Hasil percobaan dapat dilihat pada Tabel 2. Pada Tabel 2terlihat bahwa pada 11 data pengujian (nomor percobaan 4, 6, 9, 13, 14, 16, 20, 22, 26, 31, dan 34 ) Prefixspan memiliki waktu eksekusi yang sama dengan Clospan dan Prefixspan jauh lebih cepat dibandingkan Clospan pada 12 data pengujian (nomor percobaan 7, 8, 11, 18, 19, 25, 32, dan 33). Clospan terlihat lebih cepat dibandingkan dengan Prefixspan pada 13 data pengujian (nomor percobaan 1, 2, 3, 5, 10, 12, 15, 17, 21, 23, 24, 27, 29, 30, 35, dan 36). Selanjutnya, dilakukan pengelompokkan dataset berdasarkan minimum support berdasarkan waktu eksekusi. Hasil pengelompokkan tersebut dapat digambarkan pada Gambar 3 sampai dengan Gambar 8.
12
Gambar 3Perbandingan Clospan (■) dan Prefixspan (♦) berdasarkan minimum support dengan waktu eksekusi untuk dataset 50
Gambar 4Perbandingan Clospan (■) dan Prefixspan (♦) berdasarkan minimum support dengan waktu eksekusi untuk dataset 100
Gambar 5Perbandingan Clospan (■) dan Prefixspan (♦) berdasarkan minimum support dengan waktu eksekusi untuk dataset 500
Gambar 6Perbandingan Clospan (■) dan Prefixspan (♦) berdasarkan minimum support dengan waktu eksekusi untuk dataset 1,000
Gambar 7Perbandingan Clospan (■) dan Prefixspan (♦) minimum support dengan waktu eksekusi untuk dataset 2,000
Gambar 8Perbandingan Clospan (■) dan Prefixspan (♦) minimum support dengan waktu eksekusi untuk dataset 4,140
13 Dari Gambar 4 sampai 8 terlihat bahwa pada dataset dengan jumlah
14 dibawah atau sama dengan 100, waktu eksekusi Prefixspan jauh lebih cepat
15 dibandingkan dengan Clospan. Sedangkan untuk dataset 1,000 waktu eksekusi
16
Gambar 9Perbandingan Clospan (■) dan Prefixspan (♦) berdasarkan jumlah dataset dengan waktu eksekusi untuk minimum support 5%
Gambar 10 Perbandingan Clospan (■) dan Prefixspan (♦) berdasarkan jumlah dataset dengan waktu eksekusi untuk minimum support 6%
Gambar 11Perbandingan Clospan (■) dan Prefixspan (♦) jumlah dataset dengan waktu eksekusi untuk minimum support 7%
Gambar 12Perbandingan Clospan (■) dan Prefixspan (♦) jumlah dataset dengan waktu eksekusi untuk minimum support 8%
Gambar 13Perbandingan Clospan (■) dan Prefixspan (♦) berdasarkan jumlah dataset dengan waktu eksekusi untuk minimum support 10%
Gambar 14Perbandingan Clospan (■) dan Prefixspan (♦) jumlah dataset dengan waktu eksekusi untuk minimum support 15%
Prefixspan sama cepatnya dengan Clospan. Pada dataset 500, 1,000, 2,000, dan
17 4,140 waktu eksekusi Clospan lebih cepat jika dibandingkan dengan Prefixspan. Selanjutnya dilakukan perbandingan antara jumlah datasetdan waktu eksekusi yang digambarkan pada Gambar 9 sampai dengan Gambar 14. Pada Gambar 9 sampai dengan Gambar 14 terlihat jika dataset semakin besar dan minimum support semakin tinggi baik algoritme Prefixspan maupun Clospan memiliki waktu eksekusi yang semakin cepat. Namun, algoritme Clospan terlihat lebih baik jika dibandingkan dengan Prefixspan. Selain itu, dari Gambar 9 sampai 14 didapatkan fakta-fakta sebagai berikut: Pada minimum support 5% Prefixspan dan Clospan memiliki waktu eksekusi yang sama, kecuali untuk dataset 50 dan 500. Pada minimum support tersebut Clospan jauh lebih cepat dibandingkan dengan Prefixspan. Pada minimum support 6% Prefixspan lebih cepat dibandingkan dengan Clospan, kecuali untuk dataset di atas 2,000. Pada minimum support 7%, 8%, 10%, dan 15% Clospan memiliki waktu eksekusi yang sama atau lebih cepat jika dibandingkan dengan Prefixspan, kecuali untuk dataset di bawah 100. Pada dataset tersebut waktu eksekusi Prefixspan jauh lebih cepat dibandingkan dengan Clospan. Analisis Pola Sekuensial Pada pengujian sebelumnya, yaitu hubungan antara dataset, minimum support, dan jumlah pola sekuensial didapatkan fakta bahwa pada 34 percobaan dari seluruh percobaan yang telah dilakukan, algoritme Prefixspan dan Clospan memiliki jumlah pola sekuensial yang sama untuk dataset serta minimum support yang sama (lihat Tabel 2). Pada sub bab ini akan dianalisis pola sekuensial yang dihasilkan bersertaketerkaitan Antara pola sekuensial dengan koleksi buku perpustakaan. a.
Pola sekuensial Dari percobaan yang telah dilakukan sebelumnya terlihat bahwa dataset yang menghasilkan jumlah pola sekuensial yang samaternyata memiliki pola sekuensial yang sama, namun pola yang dihasilkan memiliki perbedaan urutan. Perbedaan tersebut ditemukan untuk dataset dengan jumlah pola sekuensial di atas 4 pola dan sebaliknya untuk pola sekuensial dengan jumlah di bawah 4 tidak memiliki perbedaan urutan.Dataset yang menghasilkan perbedaan jumlah dan urutan pola dapat dilihat pada Tabel 3. Pada Tabel 3 terlihat bahwa pola sekuensial yang dihasilkan Clospan berurutan, sedangkan Prefixspan menghasilkan pola sekuensial secara acak. Hal tersebut menunjukkan perbedaan cara kerja dari kedua algoritme.Clospan mengurutkan itemset setelah membangkitkan semua kandidat, sedangkan Prefixspan tidak memperhatikan urutan pola ketika membangkitkankandidat. Pada dataset 50 untuk minimum support 5% dan 7% ditemukan perbedaan jumlah pola sekuensial. Pola sekuensial yang dihasilkan Clospan jauh lebih sedikit, yaitu sebanyak 21 dan 8 jika dibandingkan dengan Prefixspan yang menghasilkan pola sebanyak 34 dan 15. Perbedaan tersebut dikarenakan Clospan menerapkan konsep post-pruning. Post-pruning merupakan proses efisiensi dengan teknik backward super-patterndan backward sub-pattern.
18 Tabel 3Pola sekuensial dengan urutan pola berbeda untuk dataset50 pada minimum support 5% Prefixspan 820 -1 #SUP: 5 (1) 681 -1 #SUP: 3 (2) 159 -1 #SUP: 3 (3) 27 -1 #SUP: 4 (4) 27 -1 27 -1 #SUP: 3 (5) 519 -1 #SUP: 3 (6) 316 -1 #SUP: 3 (7) 664 -1 #SUP: 3 (8) 658 -1 #SUP: 9 (9) 658 -1 658 -1 #SUP: 3 (10) 338 -1 #SUP: 3 (11) 631 -1 #SUP: 5 (12) 635 -1 #SUP: 3 (13) 639 -1 #SUP: 4 (14) 636 -1 #SUP: 5 (15)
b.
Clospan 27 -1 #SUP: 4 (4) 639 -1 #SUP: 4 (14) 27 -1 27 -1 #SUP: 3 (5) 631 -1 #SUP: 5 (12) 636 -1 #SUP: 5 (15) 658 -1 #SUP: 9 (9) 658 -1 658 -1 #SUP: 3 (10) 820 -1 #SUP: 5 (1)
Keterkaitan antara pola sekuensial dengan item buku Pada pengujian yang telah dilakukan sebelumnya diperoleh pola sekuensial yang secara umum tidak memiliki keterkaitan antar item atau hanya memiliki keterkaitan dengan item itu sendiri. Pola sekuensial yang menarik ditemukan pada dataset 50, 100, 500, 1,000, 2,000 dan 4,140 dengan minimum support 10%. Pada dataset tersebut terlihat bahwa buku dengan jenis 631, 639, dan 658 merupakan buku yang paling banyak dipinjam, tetapi pada pengujian tersebut tidak dihasilkan pola sekuensial yang memiliki keterkaitan yang kuat antaraitem satu dengan item lain. Hal tersebut dikarenakan hanya terdapat satuitem untuk setiap pola sekuensial. Keterkaitan yang kuat antar item hanya ditemukan pada dataset 50 dengan minimum support5%.Item027 memiliki keterkaitan dengan item 820, 631 dan 636, dan 631 dan 638 dengan jumlah support 2 pada masing-masing pola. Kode buku 027 merupakan kode buku dengan kategori perpustakaan, 631 termasuk buku dengan kategori manajemen pertanian, 636 merupakan peternakan dan manajemen peternakan, 658 termasuk kategori manajemen, administrasi bisnis, dan organisasi komersial, dan 820 termasuk kategori sastra. Selain itu, pola sekuensial dengan minimum support tertinggi didapatkan pada dataset 100 pada minimum support 35% dengan support 138.Item 658 merupakan kategori buku yang paling kuat diantara item lain. Hal ini menunjukkan bahwa kode buku 658 dengan kategori manajemen, administrasi bisnis, dan organisasi komersial merupakan pola yang paling kuat di dalam transaksi peminjaman buku perpustakaan IPB. Pola tersebut juga ditemukan pada
19 dataset50 dengan minimum support maksimal 15% dan dataset4,140 dengan minimum support 11%.
SIMPULAN DAN SARAN Simpulan 1 2 3 4
5
Dari penelitian yang telah dilakukan dapat disimpulkan sebagai berikut: Secara umum waktu eksekusi algoritme Clospan lebih cepat dibandingkan dengan Prefixspan untuk dataset yang berukuran besar. Secara umum algoritme Clospan dan Prefixspan memiliki jumlah pola sekuensial yang sama yaitu 34 data dari 36 data percobaan. Pola menarik ditemukan pada dataset 50 dengan minimum support 5%. Buku dengan kategori perpustakaan (kode 027) akan dipinjam secara bersamaan dengan buku kategori sastra (kode 820), buku dengan kategori manajemen pertanian (kode 631) akan dipinjam secara bersamaan dengan buku peternakan dan manajemen peternakan (kode 636). Buku dengan kategori manajemen, administrasi bisnis, dan organisasi komersialbisnis (kode 658) memiliki keterkaitan yang kuat dengan manajemen pertanian (kode 631). Saran
Penelitian selanjutnya dapat dilakukan pada data transaksi peminjaman buku perpustakaan lintas disiplin ilmu sehingga didapatkan pola menarik yang lebih beragam.
DAFTAR PUSTAKA Gregorius SB, Gunawan, Yulia. 2013. CloSpan Sequential Pattern Mining for Books Recommendation System in Petra Christian University Library. International Conference on Computer Networks and Information Technology (ICCNIT- 2013); Bangkok, Thailand. Han J, Kamber M. 2006. Data Mining Concepts and Techniques Second Edition. San Fransisco (US): Morgan Kaufmann Publ. Han J, Mortazavi-Asi B, Pei J, Pinto H. 2000. Prefixspan: Mining Sequential Patterns Efficiently by Prefix-Projected Pattern Growth. Prefixspan [Internet]. ([diunduh 2013 Agustus 26]). Han J, Pei J, Yan X. 2003. Sequential Pattern Mining by Pattern Growth. Sequential Pattern Mining [internet].([diunduh 2013 Juli 25]). Han J, Yan X, Ashfar R. 2003. Clospan: Mining closed sequential pattern in large dataset. Clospan [Internet]. ([diunduh2013 Agustus 26]).
20 Saputra D,Solaeman R. 2006. Analisis kinerja algoritma prefixspan dan aprioriall pada penggalian pola sekuensial. Di dalam: Fasholli Daswir, editorProsiding SNATI 2006 [internet].Seminar Nasional Aplikasi Teknologi Informasi 2006;2006 Juni 17; Yogyakarta, Indonesia. Yogyakarta (ID): UII. hlm F7F12. Viger PF. 2013. Sequential pattern mining framework versi 0.94. SPMF [internet]. (2013 Agustus 12 [diunduh 2013 Agustus 20]). Tersedia pada: http://www.philippe-fournier-viger.com/spmf.
21 Lampiran 1Pengujian terhadap beberapa datasetdenganminimum support 1
Dataset 50 Waktu (ms)
Jumlah sekuen Minimum Support (%)
Prefixspan
Clospan
34 15 15 6 4 1
21 15 8 6 4 1
5 6 7 8 10 15-19
1 11 1 1 0 1 1
Prefixspan R* 2 3 8 2 1 1 1 1
5 1 1 0 1 0
8 1.33 1 0.33 1 0.67
Clospan 1
2
3
R*
6 3 1 1 1 1
6 2 2 2 5 1
5 2 1 1 2 1
5.67 2.33 1.33 1.33 2.67 1
2 Dataset 100 Minimum Support (%)
Waktu (ms)
Jumlah sekuen Prefixspan
Clospan
10 6 5 4 4 2 1
10 6 5 4 4 2 1
5 6 7 8 10 15 17-35
1 1 1 2 1 1 1 0
Prefixspan R* 2 3 1 2 1.33 1 1 1 1 1 1.33 1 1 1 1 1 1 1 1 1 0 0 0
1 2 2 1 1 2 1 0
Clospan R* 2 3 2 2 2 2 1 1.67 1 2 1.33 1 1 1 1 1 1.33 2 1 1.33 0 0 0
3 Dataset 500 Minimum Support (%)
Jumlah sekuen Prefixspan
5 13 6 12 7 10 8 9 10 6 15 2 16 1 * R merupakan rataan
Clospan
1 13 9 12 8 10 7 9 10 6 8 2 2 1 0
Waktu (ms) Prefixspan Clospan * R R* 2 3 1 2 3 13 13 9.67 11 7 7 10.33 8 8 8.67 7 10 7 7.33 7 10 7.67 6 6 5 6 10 6 7.33 5 6 5 6.67 5 8 6.67 4 4 4 4.33 2 3 2.33 2 2 2 2 0 0 0 0 0 0 0
22 4 Dataset 1,000 Waktu (ms)
Jumlah sekuen Minimum Support Prefixspan Clospan (%) 5 6 7 8 10 15 16
11 10 6 4 2 1 0
11 10 6 4 2 1 0
1 8 7 5 5 4 3 0
Prefixspan R* 2 3 14 8 8 12 8 7.67 11 6 5.33 4 4 4.33 3 3 3.33 3 4 3 0 0 0
1 13 7 10 4 3 2 0
Clospan R* 2 3 8 8 11.67 8 7 8.67 5 5 8.67 4 4 4 3 3 3 2 5 3.33 0 0 0
5 Dataset 2,000 Jumlah sekuen Minimum Support (%) Prefixspan Clospan 5 6 7 8 10 15
12 9 7 3 1 0
12 9 7 3 1 0
Waktu (ms) Prefixspan Clospan R* R* 1 2 3 1 2 3 15 23 22 20 25 10 23 19.33 22 14 12 16 59 11 19 29.67 15 18 15 16 10 5 10 8.33 6 6 6 6 5 4 5 4.67 6 6 6 6 9 4 3 5.33 6 5 6 5.67 4 4 4 4
6 Dataset 4,140 Jumlah sekuen Minimum Support Prefixspan Clospan (%) 5 6 7 8 9-10 15
11 5 4 3 2 0
* R merupakan rataan
11 5 4 3 2 0
Waktu (ms) 1 21 29 77 14 12 9
Prefixspan Clospan R* R* 2 3 1 2 3 32 90 47.67 81 30 35 48.67 69 29 42.34 24 15 13 17.33 14 23 38 22 8 8 12.67 58 13 28.33 9 9 9 9 23 21 18.67 8 6 7 7 9 3 7 4 9 5 6
23
RIWAYAT HIDUP Penulis bernama Devi Meisita Khairunnisa yang lahir di Bandung tanggal 30 Mei 1991. Penulis merupakan putri pertama dari pasangan Drs H. Herlambang Sitompul, MM dan Natin Karyatin. Penulis bersekolah di SMA N 66 Jakarta dan melanjutkan pendidikan di Diploma IPB dengan jurusan Teknik Komputer pada tahun 2008 dan lulus tahun 2011. Kemudian, penulis melanjutkan pendidikan Sarjana melalui program alih jenis pada program studi Ilmu Komputer IPB pada tahun yang sama. Selama mengikuti perkuliahan, penulis menjadi asisten praktikum Aplikasi Komputer dan Sistem Operasi pada tahun 2011/2012 pada Program Diploma 3 IPBdan pada tahun 2013 penulis menjadi Technical Writer di Universitas Indonesia.