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. Keywords: DBSCAN, DMDBSCAN, hotspot, k-dist plot, peatland fires
PENENTUAN NILAI EPSILON (EPS) OPTIMAL PADA ALGORITME DBSCAN UNTUK MENGELOMPOKKAN DATA TITIK PANAS PADA LAHAN GAMBUT DI SUMATERA
NADIA RAHMAH
Skripsi sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer pada Departemen Ilmu Komputer
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
2
Ruang 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
LAMPIRAN
15
DAFTAR TABEL 1 Jumlah titik panas tahun 2013 pada setiap cluster 2 Perbandingan hasil cluster titik panas tahun 2013 yang dilakukan penelitian ini dengan penelitian Usman (2014)
11 12
DAFTAR GAMBAR 1 2 3 4 5 6 7
Tahapan penelitian Diagram alir algoritme penelitian Pseudocode algoritme DMDBSCAN (Elbatta 2012) Matriks jarak berukuran n n Kode program penentuan nilai Eps optimal pada algoritme DBSCAN Plot pengurutan tiga tetangga terdekat secara ascending Wilayah/kecamatan yang termasuk dalam cluster 1
3 4 7 7 9 10 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 STDBSCAN 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.
Mulai
Identifikasi masalah
Selesai
Analisis cluster
Penentuan nilai Eps optimal menggunakan bahasa pemograman R
Pengelompokan data titik panas menggunakan nilai Eps optimal pada DBSCAN
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.
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 kdist 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.
Algoritme DBSCAN
Algoritme DMDBSCAN
Mulai
Membaca data
Menghitung jarak spasial Mencari tetangga terdekat dari objek menggunakan parameter Eps dan MinPts Pembentukan cluster
Tidak
Mengurutkan 3 jarak tetangga terdekat secara ascending
Pemilihan parameter Eps dengan perhitungan perubahan kemiringan garis yang signifikan
Apakah semua titik sudah ditandai?
Ya Cluster terhadap titik panas
Selesai
Gambar 2 Diagram alir algoritme penelitian
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 titiktitik yang menjadi anggota cluster dalam radius Eps (Ester et al. 1996) Setelah diperoleh nilai Eps dan MinPts, selanjutnya dilakukan prosedurprosedur 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 Purpose Input Output Procedure
The pseudo code of the proposed technique DMDBSCAN to find suitable Epsi for each level of density in data set To find suitable values of Eps Data set of size n Eps for each varied density 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 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) { reachables <- unclass[data_[i, unclass] <= eps]
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
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).
Nilai Eps yang terbaik = 0.1118034
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 0 1 2 3 4 5 6 7 8 9 10 11
Jumlah titik panas 54 2112 44 3 6 11 23 6 23 7 10 156
Cluster 12 13 14 15 16 17 18 19 20 21 22 23
Jumlah titik panas 11 22 20 7 6 37 49 6 33 24 3 5
Cluster 24 25 26 27 28 29 30 31 32 33 34 35
Jumlah titik panas 5 70 3 3 4 29 10 3 52 74 6 10
Cluster 36 37 38 39 40 41 42 43
Jumlah titik panas 4 7 7 29 319 4 11 4
Titik panas Batas kecamatan
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
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) Metode pencarian Eps Eps otomatis pada DBSCAN DBSCAN konvensional
Jumlah cluster
Outlier
SSE
43
54
0.4 5
56
75
0.387
Jumlah titik wilayah tertinggi ttkd Pr v s R u 039 t t k d Pr v s R u
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.
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): WWFIUCN. 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 Maro Sebo Kumpeh Betara Mendahara Dendang Muara Sabak Rantau Rasau Nipah Panjang Mandah Sungai Apit Singkil Utara Tebing Tinggi Barat Merbau Lembah Melintang Muara Padang Air Sugihan Sei Beremas Batahan Batu Kuning/Lakitan Ulu Karang Dapo Arongan Lambalek Bubon Woyla Johan Pahlawan Kaway XVI Meureubo Kuala Darul Makmur Babahrot Kuala Batee Badiri Batang Toru Panga Teunom Arongan Lambalek Kinali Tanjung Mutiara Lubuk Basung
Kabupaten Muaro Jambi Muaro Jambi Tanjung Jabung Barat Tanjung Jabung Timur Tanjung Jabung Timur Tanjung Jabung Timur Tanjung Jabung Timur Tanjung Jabung Timur Indragiri Hilir Siak Aceh Singkil Bengkalis Bengkalis Pasaman Banyuasin Ogan Komering Ilir Pasaman Mandailing Natal Musi Rawas Musi Rawas Aceh Barat Aceh Barat Aceh Barat Aceh Barat Aceh Barat Aceh Barat Nagan Raya Nagan Raya Aceh Barat Daya Aceh Barat Daya Tapanuli Tengah Tapanuli Selatan Aceh Jaya Aceh Jaya Aceh Barat Pasaman Agam Agam
Propinsi Jambi Jambi Jambi Jambi Jambi Jambi Jambi Jambi Riau Riau NAD Riau Riau Sumatera Barat Sumatera Selatan Sumatera Selatan Sumatera Barat Sumatera Utara Sumatera Selatan Sumatera Selatan NAD NAD NAD NAD NAD NAD NAD NAD NAD NAD Sumatera Utara Sumatera Utara NAD NAD NAD Sumatera Barat Sumatera Barat Sumatera Barat
Cluster 2 2 2 2 2 2 2 2 3 4 5 6 6 7 8 8 9 9 10 10 11 11 11 11 11 11 11 11 11 11 12 12 13 13 13 14 14 14
16 Lampiran 1 Lanjutan Kecamatan Pematang Panggang Rawajitu Utara Cengal Ukui Lirik Rengat Barat Panai Hilir Panai Tengah Kampung Rakyat Bayung Lencir Kualuh Leidong Pulau Rakyat Sei Kepayang Pengabuan Tungkal Ilir Betara Pasir Penyu Kelayang Rangsang Tualang Sungai Mandau Kumpeh Bayung Lencir Batahan Teluk Meranti Pampangan Tulung Selapan Mandau Sungai Mandau Bantan Bengkalis Merbau Bakongan Pancung Soal Lunang Silaut Basa IV Balai Tapan Rupat Utara Rupat Tanah Putih Pauh Sarolangun
Kabupaten Ogan Komering Ilir Tulangbawang Ogan Komering Ilir Pelalawan Indragiri Hulu Indragiri Hulu Labuhan Batu Labuhan Batu Labuhan Batu Musi Banyu Asin Labuhan Batu Asahan Asahan Tanjung Jabung Barat Tanjung Jabung Barat Tanjung Jabung Barat Indragiri Hulu Indragiri Hulu Bengkalis SIAK SIAK Muaro Jambi Musi Banyu Asin Mandailing Natal Pelalawan Ogan Komering Ilir Ogan Komering Ilir Bengkalis SIAK Bengkalis Bengkalis Bengkalis Aceh Selatan Pesisir Selatan Pesisir Selatan Pesisir Selatan Bengkalis Bengkalis Rokan Hilir Sarolangun Sarolangun
Propinsi Cluster 15 Sumatera Selatan 15 Lampung 16 Sumatera Selatan 17 Riau 17 Riau 17 Riau 18 Sumatera Utara 18 Sumatera Utara 18 Sumatera Utara 19 Sumatera Selatan 20 Sumatera Utara 20 Sumatera Utara 20 Sumatera Utara 21 Jambi 21 Jambi 21 Jambi 22 Riau 22 Riau 23 Riau 24 Riau 24 Riau 25 Jambi 25 Sumatera Selatan 26 Sumatera Utara 27 Riau 28 Sumatera Selatan 28 Sumatera Selatan 29 Riau 29 Riau 30 Riau 30 Riau 30 Riau 31 NAD 32 Sumatera Barat 32 Sumatera Barat 32 Sumatera Barat 33 Riau 33 Riau 34 Riau 35 Jambi 35 Jambi
17 Lampiran 1 Lanjutan Kecamatan Sirah Pulau Padang Kota Kayu Agung Pedamaran Tapung Tampan Tulung Selapan Trumon Singkil Singkohor Rundeng Kota Baharu Rengat Batang Gansal Tempuling Keritang Batang Tuaka Enok Gaung Anak Serka Gaung Mandah Tembilah Tanah Merah Pelangir Kuala Indragiri Pulau Burung Kateman Kuala Kampar Natal Bantan Bengkalis Lais
Kabupaten Ogan Komering Ilir Ogan Komering Ilir Ogan Komering Ilir Kampar Pekan Baru Ogan Komering Ilir Aceh Selatan Aceh Singkil Aceh Singkil Aceh Singkil Aceh Singkil Indragiri Hulu Indragiri Hulu Indragiri Hilir Indragiri Hilir Indragiri Hilir Indragiri Hilir Indragiri Hilir Indragiri Hilir Indragiri Hilir Indragiri Hilir Indragiri Hilir Indragiri Hilir Indragiri Hilir Indragiri Hilir Indragiri Hilir Pelalawan Mandailing Natal Bengkalis Bengkalis Musi Banyu Asin
Propinsi Sumatera Selatan Sumatera Selatan Sumatera Selatan Riau Riau Sumatera Selatan NAD NAD NAD NAD NAD Riau Riau Riau Riau Riau Riau Riau Riau Riau Riau Riau Riau Riau Riau Riau Riau Sumatera Utara Riau Riau Sumatera Selatan
Cluster 36 36 36 37 37 38 39 39 39 39 39 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 41 42 42 43
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.