PENENTUAN NILAI EPSILON (EPS) OPTIMAL PADA ALGORITME
DBSCAN UNTUK MENGELOMPOKKAN DATA TITIK PANAS
PADA LAHAN GAMBUT DI SUMATERA
NADIA RAHMAH
DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR
BOGOR 2015
PERNYATAAN MENGENAI SKRIPSI DAN
SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA
Dengan ini saya menyatakan bahwa skripsi berjudul Penentuan Nilai Epsilon (Eps) Optimal pada Algoritme DBSCAN untuk Mengelompokkan Data Titik Panas pada Lahan Gambut di Sumatera adalah benar karya saya dengan arahan 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, Agustus 2015 Nadia Rahmah NIM G64110056
ABSTRAK
NADIA RAHMAH. Penentuan Nilai Epsilon (Eps) Optimal pada Algoritme DBSCAN untuk Mengelompokkan Data Titik Panas pada Lahan Gambut di Sumatera. Dibimbing oleh IMAS SUKAESIH SITANGGANG.
Pemantauan wilayah terjadinya titik panas dapat dilakukan dengan mengetahui penyebaran titik panas yang tersebar acak ataupun mengelompok. DBSCAN merupakan pengelompokkan berbasis kepadatan dari sejumlah data besar yang mengandung noise atau outlier. DBSCAN mempunyai dua parameter yaitu Eps dan MinPts. Akan tetapi, DBSCAN konvensional belum dapat menghasilkan nilai Eps secara optimal. Penelitian ini memodifikasi algoritme DBSCAN pada bahasa pemograman R untuk mendapatkan nilai Eps optimal secara otomatis. Penentuan nilai Eps optimal mengadopsi algoritme DMDBSCAN pada single level density sesuai k-dist plot. Data yang digunakan ialah dataset titik panas pada lahan gambut di Sumatera tahun 2013. Penelitian ini menghasilkan nilai Eps = 0.1118034 dan nilai MinPts = 3. Clustering menggunakan nilai parameter tersebut menghasilkan 43 cluster dan 54 noise dengan runtime sebesar 32.29 detik. Kepadatan titik panas tertinggi terdapat di Provinsi Riau dengan 2112 titik panas.
Kata kunci: DBSCAN, DMDBSCAN, k-dist plot, kebakaran lahan gambut, titik panas
ABSTRACT
NADIA RAHMAH. Determination of Optimal Epsilon (Eps) Value on DBSCAN Algorithm to Clustering Data on Peatland Hotspots in Sumatra. Supervised by IMAS SUKAESIH SITANGGANG.
Monitoring of the hotspots area could be done by knowing if the hotspots randomly distributed or clustered. DBSCAN is a base algorithm for density based clustering for a large amount of data which contain noise and outliers. DBSCAN has 2 parameters, Eps and MinPts. However, conventional DBSCAN cannot produce optimal Eps value. This research modifies DBSCAN algorithm using the R programming language to get the optimal Eps value automatically. Determination of optimal Eps value adopted algorithm DMDBSCAN on single density level to corresponding k-dist plot. The data set of peatlands hotspots in Sumatera in the period 2013. Implementation of DMDBSCAN resulted Eps value of 0.1118034 and MinPts value of 3. Clustering using these parameters resulted 43 clusters and 54 noise with a runtime of 32.29 seconds. The highest density of hotspots was located in the Province of Riau with 2112 hotspots.
Skripsi
sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer
pada
Departemen Ilmu Komputer
PENENTUAN NILAI EPSILON (EPS) OPTIMAL PADA ALGORITME
DBSCAN UNTUK MENGELOMPOKKAN DATA TITIK PANAS
PADA LAHAN GAMBUT DI SUMATERA
NADIA RAHMAH
DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR
BOGOR 2015
Penguji:
1 Husnul Khotimah, SKomp MKom 2 Karlina Khiyarin Nisa, SKom MT
PRAKATA
Puji dan syukur penulis panjatkan ke hadirat Allah subhanahu wa ta’ala karena atas rahmat dan ridha-Nya lah skripsi dengan judul Penentuan Nilai Epsilon (Eps) Optimal pada Algoritme DBSCAN untuk Mengelompokkan Data Titik Panas pada Lahan Gambut di Sumatera dapat diselesaikan. Penulisan skripsi ini dilakukan dalam rangka memenuhi salah satu syarat untuk mencapai gelar Sarjana Ilmu Komputer pada Fakultas Matematika dan Ilmu Pengetahuan Alam, Institut Pertanian Bogor. Penulis menyadari dalam perjalanan masa perkuliahan sampai dengan pencapaian akhir ini telah banyak pihak yang membantu dan mendukung melalui berbagai cara. Oleh karena itu, penulis ingin mengucapkan terima kasih kepada:
1 Papa dan Mama, pahlawanku tercinta, Embuh Hasbullah rahimahullah dan Kusni yang selalu memberikan dukungan dan doa tanpa henti kepada peneliti sejak lahir hingga saat ini; serta kakak-kakak terindah, Femi Rahmiani dan Mohammad Haqi Maulana yang selalu memberikan dukungan dan bantuan kepada peneliti;
2 Dr Imas Sukaesih Sitanggang, SSi MKom selaku pembimbing skripsi yang banyak memberikan masukan dan arahan, baik selama perkuliahan maupun penelitian;
3 Karlina Khiyarin Nisa, SKom MT dan Husnul Khotimah, SKomp MKom selaku penguji skripsi yang telah memberikan saran dan masukan dalam penelitian;
4 Para dosen dan staf pegawai Departemen llmu Komputer selama penulis duduk di bangku perkuliahan hingga saat ini;
5 Sahabat terbaik dan teman spesial, Sri Baskoro Bagus Pratikno yang selalu memberikan dukungan, bantuan, hiburan serta cerita yang indah;
6 Nida Zakiya, Nalar Istiqomah, Agisha Mutiara, Gita Puspita Siknun, Lusi Maulina Erman, Pristi Sukmasetya, Rachma Hermawati, Pha Hy Thah, dan Yenni Puspitasari, sebagai teman bimbingan penulis yang selalu tidak pernah bosan mengingatkan dan membantu kelancaran penyelesaian skripsi;
7 Teman-teman terbaik penulis: Dhimita, Dede, Ikhsan WW, Meylinda, Selma, Gamma, Lani, dan Iis yang selalu memberikan dukungan, hiburan serta persahabatan yang indah;
8 Teman-teman Ilmu Komputer angkatan 48 atas dukungan, hiburan, dan kenangan selama penulis berkuliah di Ilmu Komputer, IPB;
9 Dan semua pihak lainnya yang terlibat dalam penulisan skripsi ini yang tidak dapat disebutkan namanya satu per satu.
Semoga skripsi ini dapat memberikan manfaat dan dapat membantu bagi semua pihak yang membutuhkan.
Bogor, Agustus 2015 Nadia Rahmah
DAFTAR ISI
DAFTAR TABEL vi DAFTAR GAMBAR vi PENDAHULUAN 1 Latar Belakang 1 Perumusan Masalah 2 Tujuan Penelitian 2 Manfaat Penelitian 2Ruang Lingkup Penelitian 2
METODE PENELITIAN 3
Data Penelitian 3
Tahapan Penelitian 3
Identifikasi Masalah 3
Penentuan Nilai Eps Optimal Menggunakan Bahasa Pemograman R 4 Pengelompokan Data Titik Panas Menggunakan Nilai Eps Optimal pada
Algoritme DBSCAN 5
Analisis Cluster 5
Lingkupan Pengembangan 6
HASIL DAN PEMBAHASAN 6
Identifikasi Masalah 6
Penentuan Nilai Eps Optimal Menggunakan Bahasa Pemrograman R 7 Pengelompokan Data Titik Panas Menggunakan Nilai Eps Optimal pada
Algoritme DBSCAN 10
Analisis Cluster 11
SIMPULAN DAN SARAN 13
Simpulan 13
Saran 13
DAFTAR PUSTAKA 13
DAFTAR TABEL
1 Jumlah titik panas tahun 2013 pada setiap cluster 11 2 Perbandingan hasil cluster titik panas tahun 2013 yang dilakukan
penelitian ini dengan penelitian Usman (2014) 12
DAFTAR GAMBAR
1 Tahapan penelitian 3
2 Diagram alir algoritme penelitian 4
3 Pseudocode algoritme DMDBSCAN (Elbatta 2012) 7
4 Matriks jarak berukuran n n 7
5 Kode program penentuan nilai Eps optimal pada algoritme DBSCAN 9 6 Plot pengurutan tiga tetangga terdekat secara ascending 10 7 Wilayah/kecamatan yang termasuk dalam cluster 1 11
PENDAHULUAN
Latar Belakang
Kebakaran hutan dan lahan semakin menarik perhatian internasional sebagai isu lingkungan dan ekonomi, khususnya setelah bencana El Nino 1997/98 yang menghanguskan lahan hutan seluas 25 juta hektar di seluruh dunia (FAO 2001; Rowell dan More 2001). Kebakaran tersebut juga menyebabkan lahan terbakar sekitar 9.8 juta hektar yang tersebar di Kalimantan, Sumatera, Jawa, Sulawesi, dan Irian Jaya. Sebagian dari kebakaran terjadi di hutan rawa gambut (Agus dan Subiksa 2008). Kebakaran dianggap sebagai ancaman bagi pembangunan karena akan membawa dampak secara langsung bagi ekosistem dan keanekaragaman hayati (UNISDR 2002). Perbaikan kerusakan hutan dan lahan gambut akibat kebakaran memerlukan waktu yang lama, terutama untuk mengembalikannya menjadi utuh kembali. Salah satu upaya dalam mencegah kebakaran hutan dan lahan ialah mengetahui karakteristik wilayah dengan jumlah titik panas (hotspot) yang cukup tinggi terutama lahan gambut di musim panas dan kemarau yang berkepanjangan.
Pemantauan wilayah terjadinya titik panas dapat dilakukan dengan mengetahui penyebaran titik panas yang tersebar acak ataupun menggerombol. Clustering adalah proses pengelompokan kumpulan data menjadi beberapa kelompok sehingga objek di dalam satu kelompok memiliki banyak kesamaan dan memiliki banyak perbedaan dengan objek dikelompok lain. Perbedaan dan persamaannya biasanya berdasarkan nilai atribut dari objek tersebut dan dapat juga berupa perhitungan jarak (Han et al. 2012). Density based spatial clustering of applications with noise (DBSCAN) merupakan salah satu algoritme clustering berbasis kepadatan untuk data besar yang mengandung noise atau outlier.
Algoritme DBSCAN memiliki dua parameter masukan, yaitu Eps dan MinPts. Parameter Eps digunakan untuk menentukan radius (jarak maksimal) titik-titik anggota cluster dari pusat cluster. Parameter MinPts digunakan untuk memberikan batasan jumlah titik-titik yang menjadi anggota cluster dalam radius Eps tersebut. Setiap nilai Eps pada algoritme DBSCAN diadopsi untuk menemukan semua kelompok sehubungan dengan tingkat kepadatan yang sesuai (Elbatta 2012). Pada penelitian yang telah dilakukan oleh Usman (2014), nilai Eps optimal yang didapatkan masih menggunakan cara yang manual dengan memperhitungkan satu per satu nilai Eps yang sesuai. Hal ini menyebabkan pencarian nilai Eps menjadi kurang efektif dan memerlukan waktu yang lama. Pada penelitian yang dilakukan oleh Indrawan (2014), algoritme DBSCAN dimodifikasi menjadi algoritme ST-DBSCAN dengan menggunakan bahasa pemograman R. Modifikasi algoritme DBSCAN dilakukan dengan menambahan data temporal pada algoritme DBSCAN yang ada di dalam package fpc pada R.
Pada penelitian ini algoritme DBSCAN dimodifikasi untuk mendapatkan nilai Eps optimal secara otomatis dengan mengadopsi metode dynamic method DBSCAN (DMDBSCAN). DMDBSCAN merupakan salah satu metode modifikasi algoritme DBSCAN pada nilai Eps yang bervariasi. DMDBSCAN menggunakan ide k-dist plot untuk mencari nilai Epsilon (Eps) untuk semua kepadatan di dataset. Algoritme DMDBSCAN menghasilkan nilai parameter Eps secara otomatis. Nilai
2
parameter tersebut digunakan dalam pengelompokan data titik panas pada lahan gambut di Sumatera. Data yang digunakan ialah dataset titik panas (hotspot) pada lahan gambut di Sumatera tahun 2013. Implementasi modifikasi DBSCAN pada penentuan nilai parameter Eps diharapkan dapat menjadi acuan pencarian nilai Eps pada algoritme DBSCAN dan mengetahui penyebaran titik panas sehingga dapat diketahui kelompok wilayah yang berpotensi terjadinya kebakaran lahan gambut.
Perumusan Masalah
Algoritme DBSCAN digunakan untuk mengelompokkan data berdasarkan tingkat kepadatan. Akan tetapi, DBSCAN konvensional belum dapat menghasilkan nilai Eps secara otomatis dan optimal. Perolehan nilai Eps masih dilakukan dengan cara manual. Diperlukan modifikasi DBSCAN untuk mentukan nilai Eps optimal secara otomatis. DMDBSCAN merupakan salah satu metode modifikasi algoritme DBSCAN pada nilai Eps untuk mendapatkan nilai yang optimal secara otomatis dengan tingkat kepadatan yang berbeda. Oleh karena itu, rumusan masalah dari penelitian ini adalah bagaimana menentukan nilai Eps optimal pada algoritme DBSCAN untuk mengelompokkan data titik panas pada lahan gambut di Sumatera dengan menggunakan ide DMDBSCAN.
Tujuan Penelitian
Tujuan dari penelitian ini adalah:
1 Mencari nilai Eps optimal secara otomatis pada algoritme DBSCAN menggunakan bahasa pemrograman R
2 Mengelompokkan data titik panas pada lahan gambut di Sumatera menggunakan parameter Eps optimal pada DBSCAN
Manfaat Penelitian
Hasil dari penelitian ini diharapkan dapat menjadi acuan pencarian nilai Eps yang optimal pada algoritme DBSCAN sehingga dapat mengetahui kelompok munculnya titik panas pada lahan gambut di Sumatera. Hasil clustering dapat digunakan oleh pihak terkait, seperti peneliti di bidang kehutanan, pemerintah, maupun masyarakat dalam mengetahui kelompok wilayah munculnya titik panas.
Ruang Lingkup Penelitian
Ruang lingkup dari penelitian ini adalah:
1 Dataset yang digunakan ialah data titik panas pada lahan gambut di Sumatera tahun 2013
2 Penentuan nilai Eps optimal pada algoritme DBSCAN dengan memodifikasi algoritme DBSCAN yang tersedia pada package fpc dalam bahasa pemrograman R
3 3 Penentuan nilai Eps optimal secara otomatis mengadopsi metode DMDBSCAN
pada kasus single level density
4 Praproses data sudah dilakukan dalam penelitian sebelumnya oleh Usman (2014)
METODE PENELITIAN
Data Penelitian
Data penelitian yang digunakan meliputi data titik panas kebakaran hutan dan lahan di Indonesia tahun 2013 yang bersumber dari Departemen Kehutanan Republik Indonesia dan data sebaran lahan gambut di pulau Sumatera yang bersumber dari Wetlands International Program Indonesia. Keseluruhan data spasial tersebut menggunakan sistem referensi spasial WGS84. Data penelitian yang digunakan dalam penelitian ini diperoleh dari penelitian yang dilakukan peneliti sebelumnya oleh Usman (2014) yang telah dilakukan praproses data terlebih dahulu. Data yang digunakan dalam penelitian ini adalah data titik panas pada lahan gambut di Sumatera tahun 2013. Data tersebut mempunyai dua atribut yaitu latitude dan longitude. Atribut longitude (bujur) dan latitude (lintang) diperlukan untuk mengetahui lokasi dari titik panas pada wilayah tertentu.
Tahapan Penelitian
Tahapan penelitian yang dilakukan ditunjukkan pada Gambar 1.
Gambar 1 Tahapan penelitian
Identifikasi Masalah
Tahap identifikasi masalah akan dilakukan identifikasi terhadap kasus kebakaran lahan gambut di Sumatera mengenai penyebab, penanggulangan serta dampak yang ditimbulkan. Kemudian dilakukan pengidentifikasian terhadap jenis data dan metode yang digunakan untuk dilakukan pengelompokan.
Identifikasi masalah
Penentuan nilai Eps optimal menggunakan bahasa pemograman R
Pengelompokan data titik panas menggunakan nilai
Eps optimal pada DBSCAN Analisis
cluster Selesai
4
Penentuan Nilai Eps Optimal Menggunakan Bahasa Pemograman R
Tahapan ini dilakukan modifikasi algoritme DBSCAN yang tersedia pada package fpc dalam pemograman R menggunakan ide DMDBSCAN untuk mendapatkan nilai parameter Eps yang optimal. DMDBSCAN menggunakan ide k-dist plot untuk menemukan nilai parameter Eps yang sesuai dengan tingkat kepadataan data. Langkah-langkah yang digunakan untuk menemukan Eps yang sesuai pada setiap tingat kepadatan adalah (Elbatta 2012):
1 Menghitung k-dist untuk setiap titik dan mempartisi k-dist plot; 2 Jumlah kepadatan diberikan secara intuitif oleh k-dist plot; 3 Memilih parameter Eps secara otomatis untuk setiap kepadatan.
Fungsi DBSCAN pada package fpc membutuhkan nilai masukan Eps, kemudian dimodifikasi untuk mendapatkan nilai Eps secara otomatis dan optimal. Alur algoritme penentuan nilai Eps dapat dilihat pada Gambar 2.
Gambar 2 Diagram alir algoritme penelitian
Pemilihan parameter Eps dengan perhitungan perubahan kemiringan
garis yang signifikan Membaca data
Mengurutkan 3 jarak tetangga terdekat secara
ascending
Menghitung jarak spasial
Mencari tetangga terdekat dari objek menggunakan parameter
Eps dan MinPts
Tidak Pembentukan cluster Cluster terhadap titik panas Apakah semua titik sudah ditandai? Selesai Mulai Algoritme DMDBSCAN Algoritme DBSCAN Ya
5
Pengelompokan Data Titik Panas Menggunakan Nilai Eps Optimal pada Algoritme DBSCAN
Modifikasi algoritme DBSCAN menghasilkan nilai parameter Eps secara optimal dan otomatis. Nilai parameter Eps dan MinPts digunakan untuk mengelompokkan data titik panas pada lahan gambut di Sumatera tahun 2013. Parameter Eps digunakan untuk menentukan radius (jarak maksimal) titik-titik anggota cluster dari pusat cluster secara otomatis. Parameter MinPts dalam algoritme DMDBSCAN yang digunakan untuk memberikan batasan jumlah titik-titik yang menjadi anggota cluster dalam radius Eps (Ester et al. 1996)
Setelah diperoleh nilai Eps dan MinPts, selanjutnya dilakukan prosedur-prosedur yang meliputi: 1) melakukan clustering pada titik yang tersisa dengan cara menghubungkan semua titik inti (core) dengan jarak yang kurang dari Eps satu sama lain, 2) membuat setiap kelompok dari titik inti yang terhubung menjadi clustering yang terpisah, dan 3) menetapkan setiap titik perbatasan ke salah satu clustering terdekat pada kelompoknya (Ester et al. 1996). Proses clustering dalam penelitian ini menyisipkan perhitungan pencarian nilai Eps ke dalam algoritme DBSCAN yang ada di package fpc pada perangkat lunak statistika R 3.1.2 sehingga akan menghasilkan anggota cluster dengan parameter yang digunakan.
Analisis Cluster
Pada proses analisis dilakukan analisis clustering dan analisis runtime terhadap hasil implemantasi DMDBSCAN pada pengelompokan data titik panas menggunakan R. Hasil analisis ini mencakup perbandingan nilai Eps yang dihasilkan dan digunakan pada penelitian ini dengan penelitian yang dilakukan Usman (2014). Evaluasi clustering dilakukan pada tahapan ini dengan menggunakan sum of squared error (SSE) untuk memperoleh jumlah cluster yang meminimalkan SSE pada Persamaan 1 (Tan et al. 2006).
∑ ∑ (p )
p
dengan, p Ci adalah setiap data titik pada cluster i, mi adalah centroid dari cluster
i, dan d adalah jarak terdekat dari mi terhadap masing-masing cluster i.
Perhitungan runtime penelitian ini untuk dibandingkan dengan penelitian Usman (2014). Jika spatial indexing digunakan, kompleksitas komputasi DBSCAN adalah O(n log n), dengan n adalah jumlah objek data. Jika objek data tidak berbentuk spatial indexing, kompleksitas adalah O(n2) (Han et al. 2012). Spatial indexing adalah proses pembuatan indeks untuk objek-objek spasial yang digunakan untuk menyimpan objek spasial agar lebih mudah dan lebih efisien dalam proses data (Li et al. 2011).
6
Lingkupan Pengembangan
Penelitian ini dilakukan dengan menggunakan perangkat keras dan perangkat lunak sebagai berikut:
1 Perangkat keras berupa komputer personal dengan spesifikasi sebagai berikut:
Processor Intel Core i3
RAM 2 GB
HDD 520 GB 2 Perangkat lunak
Sistem operasi Windows 7 Ultimate
R 3.1.2 sebagai perangkat lunak yang digunakan untuk modifikasi algoritme DBSCAN
Quantum GIS 2.0.2 sebagai visualisasi peta penyebaran titik panas
Rapid Miner Studio 6.3.000 sebagai perhitungan SSE pada proses clustering
Notepad++ sebagai text editor
Microsoft Excel 2010 sebagai pengolahan data
HASIL DAN PEMBAHASAN
Identifikasi Masalah
Kebakaran lahan dianggap sebagai ancaman bagi pembangunan karena akan membawa dampak secara langsung bagi ekosistem dan keanekaragaman hayati. Perbaikan kerusakan hutan dan lahan gambut akibat kebakaran memerlukan waktu yang lama, terutama untuk mengembalikannya menjadi utuh kembali. Pemantauan wilayah terjadinya titik panas dapat dilakukan dengan mengetahui penyebaran titik panas yang tersebar acak ataupun menggerombol dengan menggunakan teknik clustering. Salah satu algoritme clustering ialah DBSCAN.
Algoritme DBSCAN digunakan untuk mengelompokkan data berdasarkan tingkat kepadatan. DBSCAN mempunyai dua parameter masukan yaitu Eps dan MinPts. Akan tetapi, DBSCAN konvensional belum dapat menghasilkan nilai Eps secara otomatis dan optimal. Perolehan nilai Eps masih dilakukan dengan cara manual. DMDBSCAN merupakan salah satu metode modifikasi algoritme DBSCAN pada nilai Eps untuk mendapatkan nilai yang optimal secara otomatis berdasarkan tingkat kepadatan yang bervariasi menggunakan ide k-dist plot.
Data yang digunakan pada penelitian ini adalah data titik panas pada lahan gambut di Sumatera tahun 2013. Jenis data tersebut adalah data spasial yang mempunyai dua atribut, yaitu latitude dan longitude. Atribut longitude (bujur) dan latitude (lintang) diperlukan untuk mengetahui lokasi dari titik panas pada wilayah tertentu. Pada tahun 2013, terdapat 3335 titik panas yang menyebar di area lahan gambut di Sumatera.
Berdasarkan proses kueri spasial yang dilakukan Usman (2014), pada data sebaran titik panas dan lahan gambut tahun 2013, diperoleh 20440 titik panas yang tersebar di Indonesia dan 10806 diantaranya terdapat di pulau Sumatera. Berdasarkan hasil tersebut, dari 10806 titik panas yang tersebar di pulau Sumatera terdapat 3335 titik panas yang tersebar di areal gambut dan 7471 di areal non
7 gambut. Praproses yang dilakukan oleh Usman (2014) ialah memisahkan data titik panas pada lahan gambut dan data titik panas pada lahan non gambut.
Penentuan Nilai Eps Optimal Menggunakan Bahasa Pemrograman R
Tahap ini dilakukan dengan memodifikasi algoritme DBSCAN di dalam bahasa pemrograman R. Modifikasi dilakukan dengan menyisipkan algoritme pencarian nilai Eps pada algoritme DBSCAN pada R yang terdapat pada package fpc sesuai dengan pseudocode DMDBSCAN pada Gambar 3.
Algorithm 1 The pseudo code of the proposed technique DMDBSCAN to find suitable Epsi for each level of density in data set
Purpose To find suitable values of Eps
Input Data set of size n
Output Eps for each varied density
Procedure 1 for i
2 for j = 1 to n
3 d(i,j) find distance (xi, xj)
4 find minimum values of distances to nearest 3 5 end for
6 end for
7 sort distances ascending and plot to find each value 8 Eps corresponds to critical change in curves
Gambar 3 Pseudocode algoritme DMDBSCAN (Elbatta 2012)
Algoritme dimulai dengan perhitungan jarak euclidean pada setiap pasangan data latitude dan longitude dengan fungsi dist pada baris ke-4 di Gambar 5. Selanjutnya mengubah data dist tersebut menjadi matriks menggunakan fungsi as.matrix di R pada baris ke-5 di Gambar 5. Fungsi as.matrix digunakan karena hasil dist berupa matriks segitiga atas sehingga perlu dinormalisasi menjadi matriks utuh. Normalisasi digunakan untuk memudahkan pencarian k tetangga terdekat pada setiap baris perhitungan jarak. Ilustrasi matriks jarak berukuran n n dapat dilihat pada Gambar 4 dengan menggunakan Persamaan 2.
Gambar 4 Matriks jarak berukuran n n
Pada Gambar 4, d(i,j) adalah jarak antara objek i dan j. Pada umumnya, d(i,j) adalah nilai postif yang mendekati 0 ketika objek i dan j sangat mirip atau dekat satu sama lain dan menjadi lebih besar ketika kedua objek tersebut berbeda. Pada Gambar 1 terbentuk matriks segitiga atas karena d(i,j) = d(j,i) dan d(i,i) = 0. Jarak euclidean merupakan perhitungan jarak yang banyak digunakan karena sensitif
8
terhadap outlier yang ditunjukkan pada Persamaan 2. Variabel i dan j pada Persamaan 2 merupakan objek dua dimensi (Han et al. 2012).
d(i,j) = √ - t - t (2) Setelah perhitungan jarak dan matriks, dilakukan inisialisasi untuk menghitung jumlah baris pada data dengan menggunakan fungsi nrow. Selanjutnya dilakukan pencarian tiga tetangga terdekat dari setiap baris matriks jarak untuk dilakukan pengurutan secara menaik untuk setiap hasil jarak terdekat pada tetangga. Hasil pengurutan dari setiap baris tetangga terdekat dibuat sebuah plot dengan sumbu x dan y ialah objek dan jarak k tetangga terdekat. Plot yang telah terbentuk secara ascending dihitung selisih kemiringan garis untuk mendapatkan nilai Eps (Gaonkar dan Sawant 2013). Titik yang mempunyai perubahan slope atau perubahan kemiringan pada plot yang signifikan akan menjadi nilai Eps yang optimal (Elbatta 2012). Pada algoritme DMDBSCAN dalam menentukan nilai Eps optimal dilakukan pada setiap level kepadatan data sehingga menghasilkan nilai Eps yang bervariasi sesuai dengan tingkat kepadatannya (Elbatta 2012). Pencarian nilai Eps yang bervariasi sesuai dengan tingkat kepadatannya menggunakan perhitungan selisih slope dengan menggunakan threshold antara 10% hingga 20%. Selisih slope yang mempunyai selisih antara 10% hingga 20% merupakan nilai Eps yang optimal (Gaonkar dan Sawant 2013).
Dalam penelitian ini, algoritme DMDBSCAN yang diadopsi ialah menggunakan single level density untuk menentukan nilai Eps optimal sehingga hanya menghasilkan satu nilai Eps saja. Penentuan nilai Eps untuk single level density dengan menghitung slope antar titik dengan persamaan (y2-y1)/(x2-x1)
dengan menggunakan nilai threshold 1% sehingga slope yang mempunyai selisih kemiringan 1% merupakan nilai Eps yang optimal.
Implementasi algoritme dilakukan dengan memodifikasi fungsi DBSCAN yang terdapat pada package fpc. Kode program penentuan nilai Eps optimal secara otomatis pada algoritme DBSCAN menggunakan bahasa pemrograman R dapat dilihat pada Gambar 5.
Baris program pada Gambar 5 dimodifikasi dengan tambahan beberapa baris pada algoritme DBSCAN yang terdapat di package fpc. Modifikasi pada baris ke-1 ialah dengan mengganti nilai MinPts = 3 dan menghapus nilai masukan Eps. Nilai MinPts = 3 disebabkan algoritme DMDBSCAN menggunakan nilai k = 3 (Elbatta 2012). Nilai k sebagai nilai MinPts dalam penentuan nilai parameter DBSCAN menggunakan k-dist plot (Ester et al. 1996).
9
Gambar 5 Kode program penentuan nilai Eps optimal pada algoritme DBSCAN Baris ke-4 merupakan perhitungan jarak euclidean pada data. Baris ke-5 menjadikan perhitungan jarak menjadi matriks utuh. Pada baris ke-9 sampai baris ke-11 dilakukan modifikasi dengan menambahkan pencarian tiga titik terdekat dari setiap baris matriks. Selanjutnya pada baris ke-14 dilakukan pengurutan secara ascending dari hasil pencarian tetangga terdekat dari matriks tersebut dan dibuat kurva. Pada baris ke-21 sampai baris ke-27 merupakan pencarian Eps dengan perhitungan slope (y2-y1)/(x2-x1) pada plot. Nilai Eps yang sudah didapatkan di baris
ke-27 dilakukan pencarian ketetanggan melalui jarak (Eps) pada baris ke-40.
Gambar 6 merupakan hasil plot yang telah diurutkan secara ascending menggunakan data hotspot tahun 2013. Pencarian nilai Eps dilakukan dengan perhitungan kemiringan garis dari setiap titik dan dicari pasangan titik yang
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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
dmdbscan = function (data, MinPts=3, seeds = TRUE,
showplot = FALSE,countmode = NULL) {
datadist <- dist(data) data_ <- as.matrix(datadist) n <- nrow(data)
## sorting k nearest neighbor data = data.frame()
for (i in 1:n) {
sort3 = (sort(data_[i, 1:n], partial = 4)[4]) data <- (rbind(data,data.frame(sort3))) }
# distEps adalah sumbu y-nya dalam k-dist
distEps <- sort(data$sort3, decreasing = FALSE) # sorting # ascending datas <- data.frame(object=c(1:n),distEps)
## k-dist plot
plot(datas$object, datas$distEps, xlab="Object", ylab = "K Distance", type = "p")
## finding value Eps for (i in 1:3200) { dy = ((distEps[i+1]) - (distEps[i])) } if (dy== max(dy)) y1 <- distEps[i] y2 <- distEps[i+1] eps <- (y2 + y1)/2 ## inisialisasi cluster classn <- cv <- integer(n) isseed <- logical(n) cn <- integer(1)
# jika countmode = n maka akan keluar titik mana yang sedang # diproses
for (i in 1:n) {
if (i %in% countmode)
cat("Processing point ", i, " of ", n, ".\n") unclass <- (1:n)[cv < 1]
# mencari tetangga secara spasial dari titik ke-i if (cv[i] == 0) {
10
mempunyai kemiringan garis terbesar untuk mencari titik tersebut. Kemiringan garis terbesar terletak di titik 0.1118034. Titik inilah yang menjadi nilai Eps yang optimal (Elbatta 2012).
Gambar 6 Plot pengurutan tiga tetangga terdekat secara ascending
Pengelompokan Data Titik Panas Menggunakan Nilai Eps Optimal pada Algoritme DBSCAN
Proses clustering berhasil dijalankan dari hasil modifikasi DBSCAN pada pencarian nilai Eps optimal secara otomatis dengan ide k-dist plot dengan menghasilkan parameter Eps = 0.1118034 dan MinPts = 3. Parameter ini digunakan untuk proses clustering yang menghasilkan 43 cluster dengan outlier sebesar 54 titik. Tabel 1 menunjukkan jumlah titik panas yang tersebar pada setiap cluster di areal gambut di pulau Sumatera pada tahun 2013.
Berdasarkan Tabel 1, outlier pada pengelompokan data titik panas terdapat di cluster 0 yaitu sebesar 54 titik. Outlier yang disebabkan oleh jumlah minimum keanggotaan cluster dari radius (Eps) ialah tiga. Kemudian areal yang memiliki kepadatan titik panas tertinggi di areal gambut Pulau Sumatera tahun 2013 terdapat di cluster 1 (Provinsi Riau) yaitu sebesar 2112 titik panas. Gambar 5 menunjukkan wilayah di Provinsi Riau yang termasuk dalam cluster 1. Kabupaten yang termasuk dalam cluster 1 ialah Bengkalis, Pelalawan, Rokan Hilir, Siak, Rokan Hulu, dan Indragiri Hulu. Kecamatan yang terdapat di dalam kabupaten yang termasuk dalam cluster 1 dapat dilihat pada Gambar 7.
11 Tabel 1 Jumlah titik panas tahun 2013 pada setiap cluster
Cluster Jumlah titik panas Cluster Jumlah titik panas Cluster Jumlah titik panas Cluster Jumlah titik panas 0 54 12 11 24 5 36 4 1 2112 13 22 25 70 37 7 2 44 14 20 26 3 38 7 3 3 15 7 27 3 39 29 4 6 16 6 28 4 40 319 5 11 17 37 29 29 41 4 6 23 18 49 30 10 42 11 7 6 19 6 31 3 43 4 8 23 20 33 32 52 9 7 21 24 33 74 10 10 22 3 34 6 11 156 23 5 35 10
Gambar 7 Wilayah/kecamatan yang termasuk dalam cluster 1
Analisis Cluster
Proses analisis dilakukan berdasarkan analisis clustering dan analisis running time terhadap hasil penentuan nilai Eps optimal secara otomatis pada algoritme DBSCAN untuk pengelompokan data titik panas menggunakan R. Hasil analisis ini mencakup perbandingan yang dihasilkan pada penelitian ini dengan penelitian yang dilakukan Usman (2014).
Analisis clustering dilakukan dengan melihat penyebaran titik panas di areal gambut di Sumatera tahun 2013. Penelitian Usman (2014) menggunakan data titik
Titik panas Batas kecamatan
12
panas pada lahan gambut tahun 2002 dan tahun 2013, sementara penelitian ini hanya menggunakan tahun 2013. Data tahun 2002 tidak digunakan karena untuk mengolah DMDBSCAN memerlukan normalisasi hasil dist menjadi matriks penuh. Oleh karena itu, data tahun 2002 sebanyak 13254 titik tidak dapat diproses. Perbandingan hasil cluster dalam penelitian ini dengan penelitian Usman (2014) dapat dilihat pada Tabel 2.
Tabel 2 Perbandingan hasil cluster titik panas tahun 2013 yang dilakukan penelitian ini dengan penelitian Usman (2014)
Berdasarkan Tabel 2, penelitian ini menghasilkan 43 cluster dengan 54 titik outlier dengan nilai SSE sebesar 0.415. Berdasarkan hasil perbandingan dengan hasil penelitian yang dilakukan Usman (2014), jumlah cluster yang dihasilkan penelitian ini lebih sedikit daripada penelitian Usman (2014) yang menghasilkan 56 cluster menggunakan nilai Eps = 0.1 dan MinPts = 3. Dengan demikian dapat dikatakan penelitian ini menghasilkan jumlah cluster optimal karena menghasilkan cluster yang lebih sedikit dan outlier yang lebih sedikit. Kemunculan outlier dipengaruhi oleh nilai MinPts yang digunakan atau mengambil jumlah minimal ketetanggaan tiga titik. Jika diukur menggunakan nilai SSE, penelitian ini menghasilkan SSE cukup tinggi yaitu 0.415, sedangkan penelitian Usman (2014) menghasilkan SSE sebesar 0.387. Hasil cluster pada penelitian ini dan pada penelitian Usman (2014) menunjukkan tingkat kepadatan titik panas tertinggi pada lahan gambut di Sumatera terletak pada Provinsi Riau khususnya di daerah Kecamatan Kubu, Kepenuhan, Tanah Putih, Bangko, Kuntodarussalam, Bagan Sinembag, Minas, Rimba Melintang, Mandau, Sungai Sembilan, Bukit Kapur, Bukit Batu, Medang Kampai, Siak Hulu, Sungai Mandau, Pangkalan Kerinci, Pelalawan, Dayun, Teluk Meranti, dan Rangsang.
Penelitian ini menghasilkan runtime sebesar 1.72 detik untuk waktu sistem dan 32.29 detik untuk waktu user menggunakan RAM sebesar 2 GB. Waktu sistem ialah kecepatan sistem menjalankan pekerjaannya sebelum user memasukan data. Waktu user ialah waktu yang digunakan setelah user memasukkan data ke dalam sistem. Usman (2014) melakukan percobaan satu per satu pada setiap nilai Eps dari 0.01 sampai 0.06 dan 0.1 serta nilai MinPts dari 1 sampai 6. Penelitian ini dalam menghitung nilai runtime yang dilakukan Usman (2014) hanya menggunakan MinPts = 3. Jika diasumsikan untuk satu kali percobaan menggunakan MinPts = 3 memerlukan waktu 9.83 detik untuk user dan 0.05 detik untuk sistem maka peneltian Usman (2014) memerlukan waktu sebesar 68.83 detik untuk user dan 0.34 detik untuk sistem. Oleh karena itu, penelitian ini lebih efisien dalam mengelompokkan data titik panas karena dapat menentukan nilai Eps yang optimal secara otomatis.
Metode pencarian Eps
Jumlah
cluster Outlier SSE
Jumlah titik wilayah tertinggi Eps otomatis pada DBSCAN 43 54 0.4 5 t t k d Pr v s R u DBSCAN konvensional 56 75 0.387 039 t t k d Pr v s R u
13
SIMPULAN DAN SARAN
Simpulan
Penentuan nilai Eps optimal secara otomatis pada algoritme DBSCAN dapat diimplementasikan menggunakan bahasa pemograman R dengan runtime sebesar 1.72 detik untuk sistem dan 32.39 detik untuk user. Modifikasi DBSCAN dalam penentuan nilai Eps optimal secara otomatis pada data titik panas lahan gambut tahun 2013 dengan menggunakan bahasa pemograman R menghasilkan nilai radius (jarak maksimal) titik-titik anggota cluster dari pusat cluster (Eps) sebesar 0.1118034 dan jumlah minimum titik-titik yang menjadi anggota cluster dalam radius Eps (MinPts) sebesar 3. Cluster yang terbentuk dengan menggunakan nilai Eps dan MinPts tersebut sebanyak 43 cluster dan noise sebanyak 54 titik dengan SSE sebesar 0.415. Titik panas yang paling padat pada lahan gambut di Pulau Sumatera terletak di Provinsi Riau dengan penyebaran 2112 titik panas di Kabupaten Siak, Rokan Hilir, Rokan Hulu, Bengkalis, Dumai, dan Pelalawan.
Saran
Penentuan nilai Eps optimal secara otomatis dapat diimplementasikan menggunakan bahasa pemograman R dengan menggunakan ide k-dist plot pada DMDBSCAN. Akan tetapi, penelitian ini hanya mencari nilai Eps saja serta hanya dapat menggunakan data berjumlah 3335 titik panas dan menggunakan single level density untuk penerapan metode DMDBSCAN. Oleh karena itu, pada penelitian selanjutnya diharapkan mampu untuk mengolah data yang lebih besar dan dapat menerapkan DMDBSCAN dalam pencarian Eps untuk kepadatan yang bervariasi. Selain itu, penelitian selanjutnya diharapkan dapat memperhitungkan nilai k dalam perhitungan k-dist plot serta perhitungan MinPts secara otomatis pada R.
DAFTAR PUSTAKA
Agus, Subiksa IGM. 2008. Lahan Gambut: Potensi untuk Pertanian dan Aspek Lingkungan. Bogor (ID): Balai Penelitian Tanah Badan Penelitian dan Pengembangan Pertanian.
Elbatta MNT. 2012. An improvement for DBSCAN algorithm for best results in varied densities [disertasi]. Gaza (PS): Islamic University of Gaza.
Ester M, Kriegel HP, Sander J, Xu X. 1996. A density-based algorithm for discovering clusters in large spatial databases with noise. Di dalam: Simoudis E, editor. Proceedings of 2nd International Conference on Knowledge Discovery and Data Mining (KDD-96); 1996 Agu 4-6. hlm 226-231.
[FAO] Food and Agriculture Organization. 2001. State of the Worl ’s Forests. Roma (IT): FAO.
14
Gaonkar MN, Sawant K. 2013. AutoEps DBSCAN: DBSCAN with Eps automatic for large dataset. International Journal on Advanced Computer Theory and Engineering. 2(2): 11-16.
Han J, Kamber M, Pei J. 2012. Data Mining: Concepts and Techniques. 3rd ed. San Francisco (US): Morgan-Kauffman.
Indrawan NA. 2014. Spatio-temporal clustering hotspot di Sumatera Selatan tahun 2002-2003 menggunakan algoritme ST-DBSCAN dan bahasa pemrograman R [skripsi]. Bogor (ID): Institut Pertanian Bogor.
Li S, Dragicevic S, Veenendaal B. 2011. Advances in Web-based GIS,Mapping Services and Applications. London (GB): Taylor and Francis
Rowell A, Moore PF. 2001. Global Review of Forest Fires. Gland (CH): WWF-IUCN.
Tan P, Steinbach M, Kumar V. 2006. Introduction to Data Mining. Boston (US): Pearson Education.
[UNISDR] United Nations International Strategy for Disaster Reduction. 2002. Natural Disasters and Sustainable Development: Understanding the Links Between Development and Environment and Natural Disasters. New York (US): United Nations.
Usman M. 2014. Spatial clustering berbasis densitas untuk penyebaran titik panas sebagai indikator kebakaran hutan dan lahan gambut di Sumatera [tesis]. Bogor (ID): Institut Pertanian Bogor.
15 Lampiran 1 Wilayah administrasi Kabupaten dan Kecamatan yang terdeteksi titik
panas di areal gambut pulau Sumatera Tahun 2013
Kecamatan Kabupaten Propinsi Cluster
Maro Sebo Muaro Jambi Jambi 2
Kumpeh Muaro Jambi Jambi 2
Betara Tanjung Jabung Barat Jambi 2
Mendahara Tanjung Jabung Timur Jambi 2
Dendang Tanjung Jabung Timur Jambi 2
Muara Sabak Tanjung Jabung Timur Jambi 2
Rantau Rasau Tanjung Jabung Timur Jambi 2
Nipah Panjang Tanjung Jabung Timur Jambi 2
Mandah Indragiri Hilir Riau 3
Sungai Apit Siak Riau 4
Singkil Utara Aceh Singkil NAD 5
Tebing Tinggi Barat Bengkalis Riau 6
Merbau Bengkalis Riau 6
Lembah Melintang Pasaman Sumatera Barat 7
Muara Padang Banyuasin Sumatera Selatan 8
Air Sugihan Ogan Komering Ilir Sumatera Selatan 8
Sei Beremas Pasaman Sumatera Barat 9
Batahan Mandailing Natal Sumatera Utara 9
Batu Kuning/Lakitan Ulu Musi Rawas Sumatera Selatan 10
Karang Dapo Musi Rawas Sumatera Selatan 10
Arongan Lambalek Aceh Barat NAD 11
Bubon Aceh Barat NAD 11
Woyla Aceh Barat NAD 11
Johan Pahlawan Aceh Barat NAD 11
Kaway XVI Aceh Barat NAD 11
Meureubo Aceh Barat NAD 11
Kuala Nagan Raya NAD 11
Darul Makmur Nagan Raya NAD 11
Babahrot Aceh Barat Daya NAD 11
Kuala Batee Aceh Barat Daya NAD 11
Badiri Tapanuli Tengah Sumatera Utara 12
Batang Toru Tapanuli Selatan Sumatera Utara 12
Panga Aceh Jaya NAD 13
Teunom Aceh Jaya NAD 13
Arongan Lambalek Aceh Barat NAD 13
Kinali Pasaman Sumatera Barat 14
Tanjung Mutiara Agam Sumatera Barat 14
16
Lampiran 1 Lanjutan
Kecamatan Kabupaten Propinsi Cluster
Pematang Panggang Ogan Komering Ilir Sumatera Selatan 15
Rawajitu Utara Tulangbawang Lampung 15
Cengal Ogan Komering Ilir Sumatera Selatan 16
Ukui Pelalawan Riau 17
Lirik Indragiri Hulu Riau 17
Rengat Barat Indragiri Hulu Riau 17
Panai Hilir Labuhan Batu Sumatera Utara 18
Panai Tengah Labuhan Batu Sumatera Utara 18
Kampung Rakyat Labuhan Batu Sumatera Utara 18
Bayung Lencir Musi Banyu Asin Sumatera Selatan 19
Kualuh Leidong Labuhan Batu Sumatera Utara 20
Pulau Rakyat Asahan Sumatera Utara 20
Sei Kepayang Asahan Sumatera Utara 20
Pengabuan Tanjung Jabung Barat Jambi 21
Tungkal Ilir Tanjung Jabung Barat Jambi 21
Betara Tanjung Jabung Barat Jambi 21
Pasir Penyu Indragiri Hulu Riau 22
Kelayang Indragiri Hulu Riau 22
Rangsang Bengkalis Riau 23
Tualang S I A K Riau 24
Sungai Mandau S I A K Riau 24
Kumpeh Muaro Jambi Jambi 25
Bayung Lencir Musi Banyu Asin Sumatera Selatan 25
Batahan Mandailing Natal Sumatera Utara 26
Teluk Meranti Pelalawan Riau 27
Pampangan Ogan Komering Ilir Sumatera Selatan 28 Tulung Selapan Ogan Komering Ilir Sumatera Selatan 28
Mandau Bengkalis Riau 29
Sungai Mandau S I A K Riau 29
Bantan Bengkalis Riau 30
Bengkalis Bengkalis Riau 30
Merbau Bengkalis Riau 30
Bakongan Aceh Selatan NAD 31
Pancung Soal Pesisir Selatan Sumatera Barat 32 Lunang Silaut Pesisir Selatan Sumatera Barat 32 Basa IV Balai Tapan Pesisir Selatan Sumatera Barat 32
Rupat Utara Bengkalis Riau 33
Rupat Bengkalis Riau 33
Tanah Putih Rokan Hilir Riau 34
Pauh Sarolangun Jambi 35
17 Lampiran 1 Lanjutan
Kecamatan Kabupaten Propinsi Cluster
Sirah Pulau Padang Ogan Komering Ilir Sumatera Selatan 36 Kota Kayu Agung Ogan Komering Ilir Sumatera Selatan 36 Pedamaran Ogan Komering Ilir Sumatera Selatan 36
Tapung Kampar Riau 37
Tampan Pekan Baru Riau 37
Tulung Selapan Ogan Komering Ilir Sumatera Selatan 38
Trumon Aceh Selatan NAD 39
Singkil Aceh Singkil NAD 39
Singkohor Aceh Singkil NAD 39
Rundeng Aceh Singkil NAD 39
Kota Baharu Aceh Singkil NAD 39
Rengat Indragiri Hulu Riau 40
Batang Gansal Indragiri Hulu Riau 40
Tempuling Indragiri Hilir Riau 40
Keritang Indragiri Hilir Riau 40
Batang Tuaka Indragiri Hilir Riau 40
Enok Indragiri Hilir Riau 40
Gaung Anak Serka Indragiri Hilir Riau 40
Gaung Indragiri Hilir Riau 40
Mandah Indragiri Hilir Riau 40
Tembilah Indragiri Hilir Riau 40
Tanah Merah Indragiri Hilir Riau 40
Pelangir Indragiri Hilir Riau 40
Kuala Indragiri Indragiri Hilir Riau 40
Pulau Burung Indragiri Hilir Riau 40
Kateman Indragiri Hilir Riau 40
Kuala Kampar Pelalawan Riau 40
Natal Mandailing Natal Sumatera Utara 41
Bantan Bengkalis Riau 42
Bengkalis Bengkalis Riau 42
18
RIWAYAT HIDUP
Penulis dilahirkan di Bekasi pada tanggal 9 Februari 1993, dari pasangan Bapak Embuh Hasbullah rahimahullah dan Ibu Kusni sebagai anak ketiga dari tiga bersaudara. Pada tahun 2011 penulis lulus dari SMA PGRI 1 Bekasi dan lulus seleksi masuk Institut Pertanian Bogor (IPB) melalui jalur Undangan Seleksi Masuk IPB dan diterima di Departemen Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam.
Selama mengikuti perkuliahan, penulis pernah aktif menjadi pengurus Himpunan Mahasiswa Ilmu Komputer (Himalkom) sebagai bendahara HRD Himalkom periode 2012/2013 dan sekretaris HRD Himalkom periode 2013/2014. Pada tahun 2014, penulis mengikuti kegiatan Praktik Kerja Lapangan di Badan Pengkajian dan Penerapan Teknologi (BPPT) Kawasan Puspiptek, Serpong.