KLASIFIKASI TITIK API DI BENGKALIS RIAU
MENGGUNAKAN ALGORITME ID3 SPASIAL YANG
DIPERLUAS
YAUMIL KHOIRIYAH
DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR
BOGOR 2014
PERNYATAAN MENGENAI SKRIPSI DAN
SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA*
Dengan ini saya menyatakan bahwa skripsi berjudul Klasifikasi Titik Api di Bengkalis Riau Menggunakan Algoritme ID3 Spasial yang Diperluas 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, Juli 2014 Yaumil Khoiriyah NIM G64100088
ABSTRAK
YAUMIL KHOIRIYAH. Klasifikasi Titik Api di Bengkalis Riau Menggunakan Algoritme ID3 Spasial yang Diperluas. Dibimbing oleh IMAS SUKAESIH SITANGGANG.
Kebakaran hutan di Provinsi Riau, termasuk di Kabupaten Bengkalis, merupakan bencana yang sering terjadi tiap tahun hingga saat ini. Titik api (hotspot) merupakan indikator terjadinya kebakaran hutan. Pemantauan titik api oleh satelit NOAA merupakan salah satu upaya pengenalan pola kejadian yang dapat dimanfaatkan untuk pencegahan kebakaran hutan. Data titik api ini berupa data spasial, sehingga diperlukan suatu algoritme spasial untuk dapat menggali informasi dari data titik api tersebut. Algoritme ID3 spasial yang diperluas merupakan suatu algoritme klasifikasi spasial yang dapat menghasilkan model pohon keputusan spasial. Pada penelitian ini, algoritme ID3 spasial yang diperluas diterapkan pada data kebakaran hutan di Kabupaten Bengkalis, Provinsi Riau, yang meliputi data titik api, data cuaca, data sosial ekonomi, dan data karakteristik wilayah. Hasil penelitian ini adalah sebuah pohon keputusan dengan layer pada node akar adalah sumber pendapatan. Sebanyak 137 aturan dihasilkan dengan akurasi sebesar 75.66% untuk data kebakaran hutan Kabupaten Bengkalis, serta akurasi sebesar 41.38% pada data kebakaran hutan Kabupaten Rokan Hilir, Provinsi Riau.
Kata kunci: ID3, kebakaran hutan, pohon keputusan spasial, titik api
ABSTRACT
YAUMIL KHOIRIYAH. Hotspot Classification in Bengkalis Riau Using Extended Spatial ID3 Algorithm. Supervised by IMAS SUKAESIH SITANGGANG.
Forest fire in Riau Province including Bengkalis district, are frequently occurred every year. Hotspot is an indicator for forest fire events. Hotspots monitoring by the NOAA satellite is one of the efforts to prevent forest fires. Hotspot data are spatial data. In order to analyze the data, spatial algorithms are required. The extended spatial ID3 algorithm is a spatial classification algorithm for creating a spatial decision tree from spatial datasets. This research applied the extended spatial ID3 algorithm to the forest fires data in Bengkalis district, Riau. The data include hotspots and non-hotspots, weather data, socio-economic data, and geographical characteristics of the study area. The result of this research is a decision tree with income source layer as the root node. As many as 137 rules were generated to the tree. The accuracy of the tree is 75.66% and 41.38% respectively on the forest fires dataset in Bengkalis district and Rokan Hilir district Riau.
Skripsi
sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer
pada
Departemen Ilmu Komputer
KLASIFIKASI TITIK API DI BENGKALIS RIAU
MENGGUNAKAN ALGORITME ID3 SPASIAL YANG
DIPERLUAS
YAUMIL KHOIRIYAH
DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR
BOGOR 2014
Penguji:
1 Hari Agung Adrianto, SKom MSi 2 Endang Purnama Giri, SKom MKom
Judul Skripsi : Klasifikasi Titik Api di Bengkalis Riau Menggunakan Algoritme ID3 Spasial yang Diperluas
Nama : Yaumil Khoiriyah NIM : G64100088
Disetujui oleh
Dr Imas Sukaesih Sitanggang, SSi MKom Pembimbing
Diketahui oleh
Dr Ir Agus Buono, MSi MKom Ketua Departemen
PRAKATA
Puji dan syukur penulis panjatkan kepada Allah subhanahu wa ta’ala atas segala karunia-Nya sehingga karya ilmiah ini berhasil diselesaikan. Judul dari penelitian yang dilakukan penulis adalah Klasifikasi Titik Api di Bengkalis Riau Menggunakan Algoritme ID3 Spasial yang Diperluas. Terima kasih kepada seluruh pihak yang terlibat dalam penyelesaian karya ilmiah ini, diantaranya:
1 Kedua orang tua penulis yang selalu mendoakan dan merestui kegiatan penulis.
2 Ibu Dr Imas S. Sitanggang, SSi MKom selaku dosen pembimbing yang telah memberikan masukan dan bimbingan sejak awal hingga selesainya penelitian ini.
3 Bapak Hari Agung Adrianto, SKom MSi dan Bapak Endang Purnama Giri, SKom MKom, selaku dosen penguji atas saran dan perbaikannya.
4 Teman-teman seperjuangan, Indry dan Anna, atas kerjasama dan bantuannya.
5 Teman-teman Pixels (Ilkom47) atas kebersamaannya. 6 Teman-teman UKF atas dukungannya.
7 Seluruh staf dan karyawan Departemen Ilmu Komputer FMIPA IPB, serta pihak lain yang telah membantu dalam penyelesaian penelitian ini.
Semoga karya ilmiah ini bermanfaat.
Bogor, Juli 2014 Yaumil Khoiriyah
DAFTAR ISI
DAFTAR TABEL vi DAFTAR GAMBAR vi DAFTAR LAMPIRAN vi PENDAHULUAN 1 Latar Belakang 1 Perumusan Masalah 2 Tujuan Penelitian 2 Manfaat Penelitian 2Ruang Lingkup Penelitian 2
METODE 3
Area Studi dan Data 3
Tahapan Penelitian 4
Peralatan Penelitian 6
HASIL DAN PEMBAHASAN 6
Praproses Data 6
Evaluasi Model 13
Presentasi Model 13
SIMPULAN DAN SARAN 15
Simpulan 15
Saran 15
DAFTAR PUSTAKA 15
LAMPIRAN 17
DAFTAR TABEL
1 Jenis data dan objek spasial 4
2 Layer-layer dalam basis data 9
DAFTAR GAMBAR
1 Kabupaten Bengkalis 3
2 Tahapan penelitian 4
3 Proses pembuatan layer target 7
4 True alarm (T) dan false alarm (F) 7
5 Hasil uji valid layer tutupan lahan di PostgreSQL 8
6 Contoh geometri tidak valid 9
7 Algoritme ID3 spasial yang diperluas (Sitanggang et al. 2013) 10
8 Layer target 11
9 Layer tutupan lahan 12
10 Potongan pohon keputusan yang dihasilkan 12
11 Confusion matrix hasil evaluasi data uji Rokan Hilir 13 12 Confusion matrix hasil evaluasi data uji Bengkalis 13
DAFTAR LAMPIRAN
1 Nama layer dan atributnya 17 2 Aturan terbaik urutan 11 sampai 30 18
PENDAHULUAN
Latar Belakang
Provinsi Riau merupakan wilayah dengan kasus kebakaran hutan yang cukup tinggi. Pada tahun 1997, kebakaran hutan gambut di Provinsi Riau merupakan salah satu penyumbang utama pencemaran kabut asap yang merambat hingga ke Singapura dan Malaysia (Tacconi 2003). Hingga saat ini, kebakaran hutan di Provinsi Riau sering kali terjadi setiap tahunnya, terutama pada musim kemarau.
Titik api (hotspot) adalah indikator munculnya kebakaran hutan dan lahan yang didapat dari penurunan data satelit NASA (NASA 2014). Informasi hasil pantauan ditampilkan dalam bentuk citra maupun statistik data hotspot yang tersimpan sebagai data spasial. Perbedaan format antara data spasial dan data non-spasial mengakibatkan perbedaan algoritme yang diterapkan untuk dapat menggali informasi dari kedua jenis data tersebut, sehingga diperlukan suatu algoritme khusus untuk mengolah data spasial.
Data titik api hasil pantauan satelit hanya menunjukkan koordinat titik tengah dari piksel kebakaran yang terdeteksi, bukan menunjukkan koordinat terjadinya kebakaran di permukaan bumi yang sesungguhnya (NASA 2014). Kebakaran yang terjadi mungkin saja berada dalam radius 500 meter dari koordinat titik api tersebut (Kayoman 2010). Teknik klasifikasi dapat diterapkan dalam pengolahan data titik api, sehingga diketahui karakteristik lahan dan komponen yang menyebabkan kemunculan titik api serta dapat memprediksi munculnya kebakaran hutan.
Pada penelitian sebelumnya telah dikembangkan algoritme klasifikasi pohon keputusan ID3 spasial (Rinzivillo dan Turini 2004). Penelitian ini menghasilkan algoritme ID3 spasial yang mampu menangani data spasial, namun terbatas pada data dalam tipe poligon. Kemudian hasil penelitian Rinzivillo dikembangkan kembali dan didapat algoritme ID3 spasial yang diperluas (Sitanggang et al. 2013). Algoritme ID3 spasial yang diperluas ini mampu melakukan klasifikasi dan menghasilkan pohon keputusan spasial dari data spasial dalam tipe titik, garis, dan poligon (Sitanggang et al. 2013).
Penerapan klasifikasi pada data spasial kebakaran hutan dapat dijadikan salah satu acuan dalam memprediksi kemungkinan munculnya titik api sebagai indikator kebakaran hutan di suatu wilayah. Penelitian oleh Sitanggang et al. (2013) telah menerapkan algoritme ID3 spasial yang diperluas pada data kebakaran hutan di Kabupaten Rokan Hilir, Provinsi Riau dan menghasilkan suatu pohon keputusan spasial mengenai klasifikasi titik api di wilayah tersebut. Penelitian ini bertujuan menerapkan algoritme ID3 spasial yang diperluas (Sitanggang et al. 2013) pada data kebakaran hutan di Kabupaten Bengkalis, Provinsi Riau.
2
Perumusan Masalah
Kabupaten Bengkalis, Provinsi Riau, merupakan wilayah yang rawan mengalami kebakaran hutan. Jenis lahan yang bergambut dan tindakan masyarakat yang melakukan pembakaran untuk pembersihan lahan (land clearing) semakin meningkatkan risiko kebakaran hutan di Kabupaten Bengkalis. Algoritme ID3 spasial yang diperluas perlu diterapkan pada data kebakaran hutan Kabupaten Bengkalis untuk dapat menghasilkan model pohon keputusan spasial yang dapat memprediksi karakteristik wilayah dan komponen yang berpotensi dalam kemunculan titik api, sekaligus sebagai pembanding dengan penelitian sebelumnya yang dilakukan di wilayah Kabupaten Rokan Hilir, Provinsi Riau (Sitanggang et al. 2013).
Tujuan Penelitian
Tujuan dilakukannya penelitian ini adalah:
1 Menerapkan algoritme ID3 spasial yang diperluas pada data spasial kebakaran hutan.
2 Mengevaluasi pohon keputusan spasial yang dihasilkan oleh algoritme ID3 spasial yang diperluas.
Manfaat Penelitian
Hasil dari penelitian ini yaitu sebuah pohon keputusan yang dapat digunakan untuk memprediksi kemunculan titik api di wilayah Kabupaten Bengkalis, Provinsi Riau. Pohon keputusan ini dapat digunakan untuk memprediksi kemunculan titik api sebagai indikator kebakaran hutan, dalam upaya pencegahan terjadinya kebakaran hutan.
Ruang Lingkup Penelitian
Ruang lingkup penelitian ini dibatasi pada:
1 Data kebakaran hutan yang dipakai hanya meliputi wilayah Kabupaten Bengkalis, Provinsi Riau. Data terdiri atas data cuaca, data sosial-ekonomi, serta data fisik wilayah Kabupaten Bengkalis, Provinsi Riau.
2 Metode yang digunakan adalah pohon keputusan ID3 spasial yang diperluas (Sitanggang et al. 2013).
3
METODE
Area Studi dan Data
Wilayah penelitian melingkupi daerah Kabupaten Bengkalis, Provinsi Riau (Gambar 1). Kabupaten Bengkalis memiliki luas 7,793.93 km2 (Pemerintah Provinsi Riau 2013).
Gambar 1 Kabupaten Bengkalis
Wilayah Kabupaten Bengkalis mencakup daratan bagian pesisir timur pulau Sumatera dengan batas sebagai berikut (Pemerintah Provinsi Riau 2013):
1 Sebelah utara berbatasan dengan Selat Malaka;
2 Sebelah selatan berbatasan dengan Kabupaten Siak dan Kabupaten Kepulauan Meranti;
3 Sebelah barat dengan Kota Dumai, Kabupaten Rokan Hilir dan Kabupaten Rokan Hulu, dan;
4 Sebelah timur berbatasan dengan Kabupaten Kepulauan Meranti.
Penelitian ini menggunakan data persebaran dan koordinat titik api tahun 2008 yang diperoleh dari FIRMS MODIS Fire/Hotspot, NASA/University of Maryland, data cuaca (maksimal hujan harian, temperatur harian, kecepatan angin) yang diperoleh dari Badan Meteorologi Klimatologi dan Geofisika (BMKG), data sosial-ekonomi (sumber pendapatan) dari Badan Pusat Statistika (BPS), serta peta digital yang terdiri atas peta jalan, sungai, pusat kota, tutupan lahan, dan batas administratif dari Badan Informasi Geospasial (BIG). Informasi data selengkapnya dapat dilihat pada Tabel 1.
Mengacu pada situs NASA (2014) deteksi titik api MODIS merepresentasikan titik pusat dari piksel citra seluas ± 1 km, yang menunjukkan satu atau lebih titik kebakaran atau anomali termal lainnya (misal gunung berapi). Kecerahan temperatur dari suatu piksel kebakaran diukur dalam satuan Kelvin dengan menggunakan MODIS channel 21/22 dan channel 31. Tingkat kecerahan ini merupakan suatu ukuran energi dalam cahaya pada suatu panjang gelombang yang dipresentasikan dalam satuan temperatur.
4
Tabel 1 Jenis data dan objek spasial
Data Objek spasial Banyak fitur
Fisik wilayah Pusat kota 17 titik
Sungai 948 garis
Jalan 44 garis
Tutupan lahan 3026 poligon Sosial-ekonomi Sumber pendapatan 175 poligon
Cuaca Curah hujan 49 poligon
Temperatur harian 27 poligon Kecepatan angin 41 poligon Persebaran titik api Titik api 685 titik
Tahapan Penelitian
Tahapan yang dilakukan pada penelitian ini dapat dilihat pada Gambar 2.
Praproses Data
Data spasial merupakan data yang merepresentasikan objek di permukaan bumi atas dasar referensi geografis. Objek tersebut direpresentasikan secara sederhana dengan menggunakan bentuk geometri berupa titik, garis, poligon, dan piksel (Brimicombe dan Li 2009). Objek dalam sebuah data spasial memiliki keterhubungan dengan objek tetangganya yang disebut relasi spasial. Relasi spasial diantaranya adalah topologi dan metrik. Topologi merupakan relasi spasial yang berhubungan dengan bentuk ruang geometri. Hubungan topologi menitikberatkan pada notasi Boolean, seperti irisan dan gabungan (Brimicombe dan Li 2009). Sementara itu, metrik merupakan relasi spasial yang menggunakan hubungan jarak (Ester et al. 1997). Objek-objek dalam data spasial selanjutnya tersimpan dalam suatu kumpulan yang disebut layer.
Tahap praproses data diperlukan untuk memperoleh data yang berkualitas karena hal ini akan mempengaruhi akurasi model yang dihasilkan. Dalam tahap ini dilakukan penanganan terhadap nilai kosong, data tidak konsisten, dan duplikasi data. Selain itu dilakukan konversi data non-spasial menjadi tipe data spasial. Praproses data juga menerapkan operasi spasial topologi dan metrik untuk
Gambar 2 Tahapan penelitian
Mulai Data Praproses
Data Data Latih
Pembuatan Model Klasifikasi Spasial Menggunakan Algoritme ID3 Spasial
yang Diperluas
Evaluasi Model
Selesai Presentasi Model
5 mengetahui relasi antarlayer, serta menghasilkan layer target yang akan menentukan kemunculan titik api.
Pembuatan Model Klasifikasi Spasial Menggunakan Algoritme ID3 Spasial yang Diperluas
Klasifikasi spasial merupakan metode klasifikasi yang menganalisis objek pada data spasial. Metode ini diterapkan untuk menemukan suatu pola yang berkaitan dengan unsur-unsur spasial (Han et al. 2011). Model pohon keputusan lain contohnya adalah pohon keputusan spasial entropi yang dikembangkan oleh Li dan Claramunt (2006). Pada tahap ini akan diterapkan algoritme ID3 spasial yang diperluas (Sitanggang et al. 2013) terhadap data latih. Data masukan yang digunakan terdiri atas dua jenis, yaitu sekumpulan layer penjelas yang berisi fitur-fitur spasial suatu objek di tiap layer, serta satu layer target yang berisi kelas yang digunakan dalam klasifikasi.
Langkah pertama dalam pembuatan model dengan menggunakan algoritme ID3 spasial yang diperluas (Sitanggang et al. 2013) adalah menentukan relasi spasial antara dua layer yang berbeda. Misal terdapat layer Li dan Lj, i ≠ j, untuk setiap fitur ri dengan R=SpatRel(Li, Lj), ukuran spasial untuk ri ditulis dengan SpatMes(ri). Ukuran spasial yang digunakan dapat berdasarkan hubungan topologi atau metrik. Selanjutnya ukuran spasial dihitung menggunakan persamaan 1:
SpatMes(R) = f(SpatMes(r1), SpatMes(r2), .., SpatMes(rn)) (1) dengan ri merupakan fitur di R, i = 1, 2, …, n sebanyak jumlah fitur di R. f adalah fungsi keseluruhan berupa fungsi minimum, maksimum, atau mencacah. Penentuan relasi spasial dilakukan berdasarkan hubungan topologi dengan menggunakan fungsi area dan fungsi menghitung. Hubungan metrik dilakukan dengan menerapkan fungsi jarak.
Sebuah relasi spasial antara Li dan Lj dihasilkan dalam sebuah layer baru, R. Kemudian ditentukan gabungan relasi spasial SJR (Spatial Join Relation) untuk semua fitur p di Li dan q di Lj sebagai persamaan 2:
SJR={(p, SpatMes(r), q |r adalah fitur di R yang berasosiasi dengan p dan q} (2) SpatMes digunakan untuk menghitung nilai entropi. Misalkan layer target S mempunyai l atribut kelas C yang berbeda (c1, c2, .., cl). Nilai entropi bagi S merepresentasikan informasi yang dibutuhkan untuk menentukan kelas dari keseluruhan data dan diformulasikan dalam persamaan 3 sebagai berikut (Sitanggang et al. 2013): H(S) = - ∑ 2 =1 (3)
SpatMes(S) merupakan ukuran spasial layer S dari persamaan 1.
Misalkan V merupakan atribut dari layer penjelas, memiliki q nilai berbeda (v1, v2, .. , vq). Untuk setiap nilai diasosiasikan dengan layer target S, L(vi, S), dituliskan dalam persamaan 4 (Sitanggang et al. 2013):
H(S|L) = -∑ ( )
( ( , ))
=1 (4)
H(S|L) merupakan jumlah informasi yang dibutuhkan dalam mengklasifikasi objek berdasarkan layer penjelas.
6
Langkah selanjutnya adalah menghitung nilai information gain spasial, yang menunjukkan banyaknya informasi yang akan diperoleh dari percabangan layer penjelas L. Formula untuk gain informasi spasial sebagai berikut (Sitanggang et al. 2013):
Gain(L) = H(S) – H(S|L) (5) Selanjutnya, layer dengan nilai information gain spasial tertinggi akan dipilih sebagai node akar untuk memisahkan dataset spasial.
Evaluasi Model
Tahap ini bertujuan mendapatkan akurasi model klasifikasi yang dibangun. Pengujian akurasi model klasifikasi dilakukan dengan menggunakan dataset Kabupaten Rokan Hilir, Provinsi Riau dari penelitian sebelumnya (Sitanggang et al. 2013).
Presentasi Hasil
Model klasifikasi yang selesai dibangun akan menghasilkan suatu pohon keputusan spasial. Dari pohon keputusan spasial ini akan didapat hasil berupa sekumpulan aturan IF .. THEN .. untuk prediksi kemunculan titik api.
Peralatan Penelitian
Spesifikasi perangkat keras dan perangkat lunak yang digunakan dalam penelitian ini adalah:
Sistem operasi Windows 8 64-bit
Quantum GIS versi 1.8.0-Lisboa untuk pemrosesan dan visualisasi data spasial.
PostgreSQL versi 1.16.0 sebagai sistem manajemen basis data.
PostGIS versi 2.0 sebagai ekstensi dalam PostgreSQL untuk analisis data spasial.
Bahasa pemrograman Python 2.0.
Perangkat keras berupa personal komputer dengan spesifikasi:
Processor Intel Core i3.
RAM 2GB.
HASIL DAN PEMBAHASAN
Praproses Data
Pembentukan layer target
Data persebaran dan koordinat titik api hanya mengandung objek titik api yang dalam penelitian ini dinyatakan sebagai true alarm (kelas positif). Agar pohon keputusan dapat menentukan karakteristik wilayah muncul dan tidaknya titik api, maka dilakukan pembangkitan titik secara acak sebanyak jumlah titik api asli, yaitu 685 titik dengan jarak minimum radius 0.907374 km dari titik api. Jarak ini didapat dari hasil pengolahan citra oleh satelit Landsat TM (Sitanggang et al.
7 2013). Titik acak tersebut dinyatakan sebagai false alarm (kelas negatif) yang disimpan dalam layer false alarm.
Gambar 3 menunjukkan proses pembentukan layer target. Dari data titik api yang disimpan dalam layer hotspot (A), diambil data titik api berupa atribut gid dan geom sebagai atribut dalam layer true alarm (B). Kemudian data true alarm r bu d b d n n k ‘T’. m n r d false alarm (C) dilabeli dengan k ‘F’. Selanjutnya layer target (D) dibuat dengan memasukkan data true alarm dan data false alarm. Didapat 1370 titik sebagai objek spasial dalam layer target seperti terlihat pada Gambar 4.
Gambar 3 Proses pembuatan layer target
Gambar 4 True alarm (T) dan false alarm (F)
Selain layer target, diperlukan layer penjelas sebagai masukan untuk klasifikasi titik api. Layer penjelas terdiri atas 3 aspek, yaitu fisik, sosial-ekonomi, dan cuaca. Aspek fisik meliputi objek jalan, sungai, pusat kota, dan tutupan lahan. Aspek sosial-ekonomi diwakili oleh data sumber pendapatan, sedangkan aspek cuaca meliputi data curah hujan, temperatur harian, dan kecepatan angin.
Perhitungan jarak untuk layer penjelas dengan objek jalan, sungai, dan pusat kota
Objek spasial jalan, sungai, dan pusat kota memiliki tipe garis dan titik. Oleh karena itu diterapkan operasi spasial metrik untuk mendapatkan ukuran jarak objek target ke objek dari tiap layer penjelas. Query spasial yang diterapkan untuk mencari jarak antara titik api dengan objek jalan (road) adalah:
CREATE TABLE distance_road AS SELECT t.gid AS target_id, t.geom, ST_DISTANCE(t.geom, r.geom), r.gid AS road_id FROM target AS t, road as r ORDER BY t.gid;
8
Objek di layer target diwakili oleh t.geom, sedangkan r.geom merupakan objek di layer penjelas yang dalam hal ini layer road. Setelah diketahui jaraknya, diambil jarak terdekat dari tiap objek tersebut dengan menggunakan query spasial min(ST_DISTANCE(t.geom,r.geom)) sebagai berikut:
CREATE TABLE min_distance_road AS SELECT t.gid AS target_id, t.target_attr, min(ST_DISTANCE(t.geom, r.geom)) AS
min_distance FROM target AS t, road as r GROUP BY t.gid, t.target_attr ORDER BY t.gid;
Selanjutnya, jarak terdekat tersebut diklasifikasi untuk digunakan sebagai atribut penjelas tiap objek dalam layer penjelas. Kelas jarak titik api terhadap objek jalan terdekat (dist_road), ditetapkan sebagai berikut (Sitanggang et al. 2013):
Low: jarak ke objek jalan terdekat ≤ 2500 m.
Medium: 2500 m< jarak ke objek jalan terdekat ≤ 5000 m.
High: jarak ke objek jalan terdekat > 5000 m.
Proses ini menghasilkan 3 layer penjelas dengan objek spasial berupa titik yang mewakili masing-masing jarak objek target ke jalan, sungai, dan pusat kota terdekat.
Uji validitas layer poligon
Layer penjelas dengan objek spasial bertipe poligon yaitu tutupan lahan, sumber pendapatan, curah hujan, temperatur, dan kecepatan angin diuji untuk mengetahui validitas bentuk objek dari masing-masing layer. Hal ini dilakukan dengan menggunakan query spasial sebagai berikut:
SELECT gid, ST_AsEWKT(geom), geometrytype(geom) AS geom_type, ST_IsValid(ST_AsEWKT(geom)) AS valid_geom FROM l7 ORDER BY valid_geom;
Misalnya untuk objek tutupan lahan, setelah diuji terdapat 68 geometri yang tidak valid seperti ditampilkan dalam Gambar 5.
Gambar 5 Hasil uji valid layer tutupan lahan di PostgreSQL
Untuk mengatasi hal ini, layer tersebut ditampilkan pada QGIS, kemudian ditentukan geometri dengan nomor gid yang bermasalah. Terlihat pada Gambar 6, geometri dengan gid 2076 adalah sebuah garis yang berimpitan dengan gid 2077 sehingga geometri dianggap tidak valid. Solusinya adalah menghapus geometri dengan gid 2076. Kemudian lakukan pengujian lagi untuk mengecek validitas geometri dari setiap layer dan perbaiki lagi hingga seluruh geometri di tiap layer bernilai valid.
9
Gambar 6 Contoh geometri tidak valid
Seluruh layer penjelas beserta layer target tersimpan dalam suatu basis data di PostgreSQL. Untuk efisiensi pemrosesan data, dilakukan perubahan nama layer menjadi kode-kode yang lebih singkat. Daftar nama beserta bentuk geometri masing-masing layer dapat dilihat dalam Tabel 2.
Tabel 2 Layer-layer dalam basis data
Nama layer Objek spasial Banyak fitur Banyak kelas
l0 (dist_city) Pusat kota 1370 titik 3 (low, medium, high) l1 (dist_river) Sungai 1370 titik 3 (low, medium, high) l2 (dist_road) Jalan 1370 titik 3 (low, medium, high) l3
(income_source)
Sumber pendapatan
175 poligon 9 (plantation, services, dll)
l4 (land_cover) Tutupan lahan 2937 poligon
12 (plantation, swamp, dll)
l5 (precipitation) Curah hujan 49 poligon 5 (0, 1, 2, 3, 4) l6 (screen_temp) Temperatur harian 27 poligon 3 (297, 298, 299) l7 (wind_speed) Kecepatan angin 40 poligon 5 (0, 1, 2, 3, 4) Target True alarm (titik
api) dan false alarm
1370 titik 2 (true, false)
Pembuatan Model Klasifikasi Spasial Menggunakan Algoritme ID3 Spasial yang Diperluas
Tahap ini dilakukan dengan mengimplementasikan algoritme ID3 spasial yang diperluas ke dalam bahasa pemrograman Python (Sitanggang et al. 2013). Alur kerja algoritme ini dapat dilihat dalam Gambar 7.
Terdapat 3 modul utama yang digunakan, yaitu modul konfigurasi basis data, modul penghitung nilai entropi, dan modul penyusun pohon keputusan. Modul konfigurasi berisi nama basis data yang digunakan, akun pengguna dan password basis data, serta daftar layer masukan yang digunakan beserta tipe geometrinya. Modul ini mengatur agar sistem Python dapat mengakses basis data yang digunakan.
Modul penghitung nilai entropi berisi fungsi matematis untuk menghitung nilai entropi spasial. Beberapa fungsi tersebut diantaranya fungsi penghitung nilai entropi dan fungsi gain spasial. Sementara itu, modul pohon keputusan berisi fungsi-fungsi penyusun pohon keputusan seperti fungsi pembuat layer baru dan fungsi utama pembuat pohon keputusan.
10
Gambar 7 Algoritme ID3 spasial yang diperluas (Sitanggang et al. 2013) Fungsi penghitung nilai entropi spasial adalah:
Fungsi penghitung nilai gain spasial adalah:
subset_entropy += val_prob * entropy(target_layer, subset_layer) #Subtract the entropy of the chosen layer from the entropy of the #whole set of layers with respect to the target layer (and return #it)
return (entropy(target_layer, exp_layer) - subset_entropy)
#Calculate the entropy of the data for the target layer layer_entropy+=(float(spatmes_val[val])/float(sum(spatmes_val.valu es())))*math.log(float(spatmes_val[val])/float(sum(spatmes_val.val ues())),2)
11 Dalam modul penyusun pohon keputusan, terdapat fungsi pembuatan layer baru (create_new_layers). Layer baru ini merupakan hasil dari operasi topologi antara layer penjelas dan layer penjelas dengan nilai gain spasial tertinggi (best layer). Operasi topologi yang dilakukan berdasarkan bentuk geometri layer penjelas dan best layer yang digunakan. Contoh query untuk membentuk layer baru dalam fungsi create_new_layers jika kedua layer berbentuk poligon adalah:
Fungsi utama yang dipanggil untuk menjalankan algoritme ID3 spasial yang diperluas (Sitanggang et al. 2013) adalah fungsi pembuat pohon keputusan yang terdapat dalam modul penyusun pohon keputusan. Masukan dalam fungsi tersebut adalah nama-nama layer penjelas, nama layer target, dan fungsi pendekatan, yang dalam algoritme ini menggunakan fungsi gain spasial. Keluaran dari fungsi ini adalah sebuah pohon keputusan spasial.
Fungsi pembuat pohon keputusan bekerja dengan memilih layer terbaik (best layer) berdasarkan nilai gain spasial yang diperoleh. Layer penjelas yang menjadi best layer dalam penghitungan pertama akan menjadi node akar dalam pohon keputusan. Atribut dalam best layer menjadi nilai dari edge yang tersambung ke node internal yang merupakan best layer di penghitungan selanjutnya.
Data masukan dalam pembuatan model pohon keputusan terdiri atas 1 layer target, dan beberapa layer penjelas. Jumlah layer yang digunakan dalam penelitian ini adalah 10 layer yang terdiri atas 8 layer penjelas dan 1 layer target, serta 1 layer tambahan dari sistem basis data PostgreSQL. Gambar 8 menunjukkan layer target, Gambar 9 menampilkan contoh layer penjelas, yaitu layer tutupan lahan. Nama layer dan nilai-nilai atributnya dapat dilihat pada Lampiran 1.
Gambar 8 Layer target
#Best layer and exp layer are represented in polygon feature, #output in polygon feature
If str(best_layer_geom_type[0]).find("POLYGON") != -1 and str(exp_layer_geom_type[0]).find("POLYGON") != -1:
cur.execute("""CREATE TABLE %s AS SELECT DISTINCT e.gid, \ ST_Intersection(b.geom, e.geom) AS geom, e.exp_attr \ FROM "%s" AS b, "%s" AS e WHERE b.exp_attr = '%s' \
AND ST_Intersects(b.geom, e.geom) AND ST_Area(e.geom)>1000\ ORDER by e.gid;""" %(exp_layer_name, best_layer,exp_layer,\ val));
12
Gambar 9 Layer tutupan lahan
Proses pembuatan model klasifikasi berhasil dijalankan dengan menghasilkan 1291 layer baru beserta sebuah model klasifikasi berupa pohon keputusan. Model pohon keputusan ini terdiri atas 137 daun dengan layer sumber pendapatan sebagai node akar. Gambar 10 menunjukkan potongan model pohon keputusan yang dihasilkan.
13
Evaluasi Model
Evaluasi model dilakukan dengan menggunakan 2 data uji, yaitu data Kabupaten Rokan Hilir (Sitanggang et al. 2013) dan data Kabupaten Bengkalis. Kedua data tersebut dipraproses dengan menghilangkan data duplikat serta mengubahnya dari format basis data menjadi format .file. Untuk data Rokan Hilir, dilakukan pengurangan layer penjelas dari sebelumnya terdiri atas 10 layer menjadi 8 layer, sesuai dengan jumlah layer yang digunakan dalam pembentukan model pohon keputusan pada penelitian ini.
Akurasi dari evaluasi menggunakan dataset Rokan Hilir sebesar 41.38%, dengan prediksi kelas yang sesuai sebanyak 192 dari 464 data uji, sedangkan evaluasi menggunakan data Bengkalis menghasilkan akurasi sebesar 75.66%, dengan 404 dari 534 data uji terprediksi sesuai kelasnya. Hal ini dapat dilihat dalam confusion matrix pada Gambar 11 dan Gambar 12.
T F Total
T 14 177 191
F 95 178 273
Total 109 355 464
Gambar 11 Confusion matrix hasil evaluasi data uji Rokan Hilir
T F Total
T 44 110 154
F 20 360 380
Total 64 470 534
Gambar 12 Confusion matrix hasil evaluasi data uji Bengkalis
Pada penelitian sebelumnya (Sitanggang et al. 2013), jarak titik api terhadap objek sungai terdekat terpilih menjadi node akar, sementara dalam penelitian ini layer yang menjadi node akar adalah sumber pendapatan. Hal tersebut menunjukkan bahwa atribut yang paling berpengaruh dalam model pohon keputusan dalam penelitian ini adalah sumber pendapatan warga Kabupaten Bengkalis. Pada penelitian yang dilakukan Sitanggang et al. (2013) pada data Kabupaten Rokan Hilir, atribut yang paling berpengaruh adalah jarak titik api terhadap sungai terdekat.
Presentasi Model
Dari pohon keputusan dapat diturunkan aturan untuk mengklasifikasikan kemunculan titik api berdasarkan karakteristik wilayah. Berikut adalah 10 dari 30 aturan terbaik yang dihasilkan model pohon keputusan berdasarkan jumlah objek terbanyak:
1 IF income_source = plantation AND land_cover = plantation AND 1 mm/day ≤ precipitation < 2 mm/day AND 0 m/s ≤ wind_speed < 1 m/s
14
AND 297 K ≤ screen_temp < 298 K AND dist_road > 5 km AND dist_river ≤ 1.5 km, THEN hotspot occurence = T
Jumlah objek: 1315 titik
2 IF income_source = plantation AND land_cover = plantation AND 1 mm/day ≤ precipitation < 2 mm/day AND 1 m/s ≤ wind_speed < 2 m/s, THEN hotspot occurence = T
Jumlah objek: 954 titik
3 IF income_source = plantation AND land_cover = plantation AND 1 mm/day ≤ precipitation < 2 mm/day AND 1 m/s ≤ wind_speed < 2 m/s AND 297 K ≤ screen_temp < 298 K AND dist_road > 5 km AND dist_river > 3 km, THEN hotspot occurence = T
Jumlah objek: 557 titik
4 IF income_source = plantation AND land_cover = plantation AND 1 mm/day ≤ precipitation < 2 mm/day AND 3 m/s ≤ wind_speed < 4 m/s, THEN hotspot occurence = F
Jumlah objek: 304 titik.
5 IF income_source = plantation AND land_cover = plantation AND 1 mm/d y ≤ precipitation ≤ 2 mm/day AND 3 m/s ≤ wind_speed < 4 m/s AND dist_road > 5 km AND dist_river > 3 km, THEN hotspot occurence = T
Jumlah objek: 140 titik
6 IF income_source = plantation AND land_cover = plantation AND precipitation ≥ 4 mm/day AND 1 m/s ≤ wind_speed < 2 m/ AND 297 K ≤ screen_temp < 298 K AND dist_road > 5 km AND dist_river ≤ 1.5 km, THEN hotspot occurence = T
Jumlah objek: 138 titik
7 IF income_source = forestry AND 3 mm/day ≤ precipitation ≤ 4 mm/day AND 1 m/s ≤ wind_speed < 2 m/ AND 297 K ≤ screen_temp < 298 K, THEN hotspot occurence = F
Jumlah objek: 69 titik
8 IF income_source = plantation AND land_cover = plantation AND 3 mm/d y ≤ precipitation < 4 mm/day AND 1 m/s ≤ wind_speed < 2 m/s AND 297 K ≤ screen_temp < 298 K AND dist_road ≤ 2.5 km AND dist_river ≤ 1.5 km, THEN hotspot occurence = T
Jumlah objek: 52 titik
9 IF income_source = plantation AND land_cover = plantation AND precipitation ≥ 4 mm/day AND 1 m/s ≤ wind_speed < 2 m/ AND 297 K ≤ screen_temp < 298 K AND dist_road > 5 km AND 1.5 km < dist_river ≤ 3 km, THEN hotspot occurence = T
Jumlah objek: 52 titik
10 IF income_source = forestry AND 1 mm/d y ≤ precipitation ≤ 2 mm/day AND 2 m/s ≤ wind_speed < 3 m/ AND 298 K ≤ screen_temp < 299 K, THEN hotspot occurence = F
Jumlah objek: 40 titik
Aturan-aturan lainnya dapat dilihat pada Lampiran 2.
Aturan 1 menunjukkan bahwa jika suatu wilayah merupakan sumber pendapatan dalam bidang perkebunan dan tutupan lahan berupa perkebunan, dengan kondisi tingkat curah hujan antara 1 dan 2 mm/hari, kecepatan angin
15 sebesar 0 sampai 1 m/s, dan suhu rata-rata berkisar 297 K sampai 298 K, serta jarak dari akses jalan lebih dari 5 km dan jarak ke sungai kurang dari atau sama dengan 1.5 km, diprediksi bahwa terdapat kemunculan titik api di wilayah tersebut.
SIMPULAN DAN SARAN
Simpulan
Penelitian ini telah menghasilkan sebuah model klasifikasi pohon keputusan spasial. Akurasi yang dihasilkan adalah sebesar 41.38% untuk data uji Kabupaten Rokan Hilir, dan sebesar 75.66% dengan data uji Kabupaten Bengkalis. Layer sumber pendapatan merupakan layer utama yang menjadi node akar dalam model klasifikasi pohon keputusan yang dibuat dalam penelitian ini, dengan jumlah aturan sebanyak 137 aturan. Dalam model klasifikasi pohon keputusan yang dibuat menggunakan data Kabupaten Rokan Hilir, layer penjelas yang menjadi node akar adalah layer jarak terdekat titik api terhadap sungai.
Saran
Akurasi yang dihasilkan dari data uji Kabupaten Rokan Hilir masih terhitung rendah. Untuk itu, terkait penelitian mengenai algoritme ID3 spasial yang diperluas perlu dilakukan pembangunan model pohon keputusan spasial dengan menggunakan data dari kabupaten lain di Provinsi Riau. Hal ini disarankan sebagai pembanding model klasifikasi yang dihasilkan dari Kabupaten Rokan Hilir dan Kabupaten Bengkalis, Provinsi Riau.
DAFTAR PUSTAKA
Brimicombe A, Li C. 2009. Location-Based Services and Geo-Information Engineering. Sussex (UK): Wiley-Blackwell.
Ester M, Kriegel HP, Sander J. 1997. Spatial data mining: a database approach. Fifth Int. Symposium on Large Spatial Databases; 1997 Jul 15-18. Berlin, Jerman. Berlin (DE): Springer. hlm 47-66.
Han J, Kamber M, Pei J. 2011. Data Mining Concepts and Techniques. 3rded. San Fransisco (US): Morgan Kauffman Publishers.
Kayoman L. 2010. Pemodelan spasial resiko kebakaran hutan dan lahan di provinsi Kalimantan Barat [tesis]. Bogor: Sekolah Pascasarjana, Institut Pertanian Bogor.
Li X, Claramunt C. 2006. A spatial entropy-based decision tree for classification of geographical information. Transaction in GIS. 10(3): 451-467.
[NASA] National Aeronautics and Space Administration. 2014. FIRMS FAQ. [Internet]. [diunduh 2014 Juni 23]. Tersedia pada: https://earthdata.nasa.gov/data/near-real-time-data/faq/firms#firms7.
16
Pemerintah Provinsi Riau. 2013. Kabupaten Bengkalis. [Internet]. [diunduh 2013 Des 12]. Tersedia pada: http://www.riau.go.id/index.php?/detail/6.
Rinzivillo S, Turini F. 2004. Classification in geographical information systems. Di dalam J.-F Boulicaut et al., editor. The 8th European Conference on Principles and Practice of Knowledge Discovery in Databases; 2004 Sept 20-24. Pisa, Italy. New York (US): Springer-Verlag. hlm 374-385.
Sitanggang IS, Yaakob R, Mustapha N, Ainudin AN. 2013. Classification model for hotspot occurences using spatial decision tree algorithm. Journal of Computer Science. 9(2):244-251. doi:110.3844/jcssp.2013.244.251.
Tacconi L. 2003. Kebakaran Hutan di Indonesia: Penyebab, Biaya, dan Implikasi Kebijakan. Bogor (ID): Center For International Forestry Research.
17 Lampiran 1 Nama layer dan atributnya
Nama layer Objek spasial Kode atribut Nilai atribut
l0 Pusat kota l0v0 l0v1 l0v2 L w: ≤ 7km Medium: (7 km, 14 km] High: > 14km l1 Sungai l1v0 l1v1 l1v2 L w: ≤ 1.5km Medium: (1.5 km, 3 km] High: > 3km l2 Jalan l2v0 l2v1 l2v2 L w: ≤ 2.5km Medium: (2.5 km, 5 km] High: > 5km l3 Sumber pendapatan l3v0 l3v1 l3v2 l3v3 l3v4 l3v5 l3v6 l3v7 l3v8 Plantation Mining Other_agriculture No_data Trading_restaurant Forestry Agriculture Manufacture Services l4 Tutupan lahan l4v0 l4v1 l4v2 l4v3 l4v4 l4v5 l4v6 l4v7 l4v8 l4v9 l4v10 l4v11 Plantation Dryland_forest Mangrove Settlement Water_body Embankment Bare_land Shrubs Paddy_field Unirrigated_agri_field Swamp Mix_garden l5 Curah hujan l5v0 l5v1 l5v2 l5v3 l5v4 0: [0 mm/day, 1 mm/day) 1: [1 mm/day, 2 mm/day) 2: [2 mm/day, 3 mm/day) 3: [3 mm/day, 4 mm/day) 4: ≥ 4 mm/d y l6 Temperatur harian l6v0 l6v1 l6v2 297: [297 K, 298 K) 298: [298 K, 299 K) 299: ≥299 l7 Kecepatan angin l7v0 l7v1 l7v2 l7v3 l7v4 0: [0 m/s, 1 m/s) 1: [1 m/s, 2 m/s) 2: [2 m/s, 3 m/s) 3: [3 m/s, 4 m/s) 4: [4 m/s, 5 m/s)
18
Lampiran 2 Aturan terbaik urutan 11 sampai 30
11 IF income_source = plantation AND land_cover = plantation AND 2 mm/day ≤ precipitation < 3 mm/day AND dist_road > 5 km AND 1.5 km < dist_river ≤ 3 km, THEN hotspot occurence = F
Jumlah objek: 40 titik
12 IF income_source = forestry AND 3 mm/day ≤ precipitation < 4 mm/day AND 0 m/s ≤ wind_speed < 1 m/s AND 297 K ≤ screen_temp < 298 K, THEN hotspot occurence = F
Jumlah objek: 32 titik
13 IF income_source = plantation AND land_cover = plantation AND 2 mm/day ≤ precipitation < 3 mm/day AND dist_road > 5 km AND dist_river ≤ 1.5 km, THEN hotspot occurence = F
Jumlah objek: 32 titik
14 IF income_source = agriculture AND 3 m/s ≤ wind_speed < 4 m/s AND 298 K ≤ screen_temp < 299 K and 0 mm/day ≤ precipitation < 1 mm/day, THEN hotspot occurence = F
Jumlah objek: 31 titik
15 IF income_source = plantation AND land_cover = plantation AND 3 mm/day ≤ precipitation < 4 mm/day AND 0 m/s ≤ wind_speed < 1 m/s AND 297 K ≤ screen_temp < 298 K AND dist_road ≥ 5 km, THEN hotspot occurence = T Jumlah objek: 27 titik
16 IF income_source = plantation AND land_cover = dryland_forest AND 1 m/s ≤ wind_speed < 2 m/s AND 298 K ≤ screen_temp < 299 K, THEN hotspot occurence = F
Jumlah objek: 26 titik
17 IF income_source = services AND 1 m/s ≤ wind_speed < 2 m/s AND 297 K ≤ screen_temp < 298 K AND 3 mm/day ≤ precipitation < 4 mm/day, THEN hotspot occurence = F
Jumlah objek: 23 titik
18 IF income_source = plantation AND land_cover = plantation AND 1 mm/day ≤ precipitation < 2 mm/day AND 2 m/s ≤ wind_speed < 3 m/s AND dist_road ≤ 2.5 km AND dist_river ≤ 1.5 km, THEN hotspot occurence = F
Jumlah objek: 22 titik
19 IF income_source = plantation AND land_cover = dryland_forest AND 1 m/s ≤ wind_speed < 2 m/s AND 297 K < screen_temp ≤ 298 K AND 3 mm/day ≤ precipitation < 4 mm/day AND dist_road > 5 km AND dist_river ≤ 1.5 km, THEN hotspot occurence = T
Jumlah objek: 22 titik
20 IF income_source = plantation AND land_cover = plantation AND precipitation ≥ 4 mm/day AND 1 m/s ≤ wind_speed < 2 m/s AND 297 K < screen_temp ≤ 298 K AND dist_road > 5 km AND 1.5 km < dist_river ≤ 3 km, THEN hotspot occurence = T
19 Lampiran 2 Lanjutan
21 IF income_source = forestry AND 3 mm/day ≤ precipitation < 4 mm/day AND 1 m/s ≤ wind_speed < 2 m/s AND 297 K < screen_temp ≤ 298 K, THEN hotspot occurence = F
Jumlah objek: 18 titik
22 IF income_source = plantation AND land_cover = plantation AND 2 mm/day ≤ precipitation < 3 mm/day AND dist_road > 5 km AND dist_river ≤ 1.5 km, THEN hotspot occurence = F
Jumlah objek: 18 titik
23 IF income_source = plantation AND land_cover = plantation AND 2 mm/day ≤ precipitation < 3 mm/day AND 2.5 km < dist_road ≤ 5 km AND dist_river ≤ 1.5 km, THEN hotspot occurence = F
Jumlah objek: 16 titik
24 IF income_source = other_agriculture AND 1 m/s ≤ wind_speed < 2 m/s AND 297 K < screen_temp ≤ 298 K AND 3 mm/day ≤ precipitation < 4 mm/day, THEN hotspot occurence = F
Jumlah objek: 15 titik
25 IF income_source = plantation AND land_cover = plantation AND 1 mm/day ≤ precipitation < 2 mm/day AND 2 m/s ≤ wind_speed < 3 m/s AND dist_road > 5 km AND dist_river ≤ 1.5 km, THEN hotspot occurence = F Jumlah objek: 14 titik
26 IF income_source = mining AND 1 m/s ≤ wind_speed < 2 m/s, THEN hotspot occurence = T
Jumlah objek: 13 titik
27 IF income_source = plantation AND land_cover = plantation AND 3 mm/day ≤ precipitation < 4 mm/day AND 0 m/s ≤ wind_speed < 1 m/s AND 297 K ≤ screen_temp < 298 K AND dist_road ≤ 2.5 km, THEN hotspot occurence = F
Jumlah objek: 13 titik
28 IF income_source = other_agriculture AND 2 m/s ≤ wind_speed < 3 m/s AND 298 K ≤ screen_temp < 299 K AND 1 mm/day ≤ precipitation < 2 mm/day, THEN hotspot occurence = F
Jumlah objek: 13 titik
29 IF income_source = plantation AND land_cover = plantation AND 2 mm/day ≤ precipitation < 3 mm/day AND dist_road ≤ 2.5 km AND dist_river ≤ 1.5 km, THEN hotspot occurence = F
Jumlah objek: 12 titik
30 IF income_source = services AND 3 m/s ≤ wind_speed < 4 m/s, THEN hotspot occurence = F
20
RIWAYAT HIDUP
Penulis dilahirkan pada tanggal 5 Juli 1992 di Banyumas, Jawa Tengah. Penulis merupakan anak ke-2 dari 3 bersaudara dengan ayah bernama M. Al-Masykur (alm.) dan ibu bernama Laelatul Badriyah. Tahun 2010 penulis lulus dari SMA Negeri 2 Kota Bekasi dan diterima di Institut Pertanian Bogor, Program Studi S1 Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam, melalui jalur Undangan Seleksi Masuk IPB (USMI).
Semasa menjadi mahasiswa di IPB, penulis aktif di Unit Kegiatan Mahasiswa (UKM) Uni Konservasi Fauna (UKF) IPB sebagai anggota Divisi Konservasi Insekta. Pada tanggal 28 Juni 2013, penulis melaksanakan praktik kerja lapangan di Divisi IT GarudaFood, Gunung Putri, Bogor, selama sekitar 2 bulan.