Web Development & AI Completed June 2026

LaporkanAja

Platform pelaporan kerusakan jalan cerdas yang menggabungkan verifikasi multimodal AI (IndoBERT + MobileNetV2 CNN), deteksi laporan duplikat berbasis geolokasi, dan kalkulasi skor prioritas otomatis untuk dinas terkait.

LaporkanAja.view
LIVE
LaporkanAja Cover Preview

Ringkasan Proyek

Latar belakang dan cakupan sistem
Laporkan adalah sistem pelaporan infrastruktur publik terintegrasi yang dirancang untuk mengatasi lambatnya penanganan kerusakan jalan di area perkotaan (studi kasus Kota Medan). Sistem ini menghubungkan warga dan pihak dinas (seperti Dinas PU/PUPR) secara transparan.

Bukan sekadar form aduan biasa, sistem ini dilengkapi backend microservice AI yang mampu memvalidasi foto serta narasi laporan warga secara bersamaan menggunakan multimodal late fusion. Selain mengklasifikasikan tingkat kerusakan (Jalan Baik, Rusak Ringan, Rusak Parah), sistem secara otomatis mengekstrak informasi lokasi dan waktu dari teks menggunakan Named Entity Recognition (NER), mendeteksi laporan ganda di titik berdekatan, serta menghitung skor prioritas perbaikan berbasis kepadatan fasilitas publik dan urgensi kerusakan.

Latar Belakang & Kebutuhan

Kendala operasional dan kebutuhan spesifikasi sistem
Pengaduan fasilitas publik sering kali menghadapi beberapa hambatan klasik:

Validasi manual yang memakan waktu: Petugas harus mengecek foto satu per satu untuk memastikan apakah kerusakan masuk kategori ringan atau darurat.
Laporan tumpang-tindih (duplikat): Satu lubang jalan yang ramai dilewati bisa dilaporkan puluhan warga secara terpisah, membuat antrean laporan menumpuk dan membingungkan petugas lapangan.
Deskripsi warga yang tidak terstruktur: Keterangan lokasi sering kali tercecer di dalam kalimat deskripsi tanpa koordinat yang presisi.
Penentuan prioritas yang subjektif: Sulit menentukan titik mana yang harus diperbaiki lebih dulu jika hanya mengandalkan urutan tanggal masuk (first come, first served), padahal ada jalan rusak parah yang berada tepat di depan rumah sakit atau jalur vital.

Solusi & Desain Sistem

Pendekatan arsitektur dan struktur logika sistem
Membangun platform end-to-end dengan arsitektur modular yang membagi beban kerja secara efisien:

Frontend Interaktif (React & Leaflet): Menyediakan peta interaktif publik, visualisasi heatmap/klaster sebaran jalan rusak, live preview klasifikasi AI sebelum laporan dikirim, dan pelacakan status transparan dengan kode unik.
REST API Backend (Node.js & Express): Mengelola transaksi basis data relasional secara ketat (ACID), menangani routing tugas ke dinas penanggung jawab, serta mengelola log notifikasi email dan privasi pelapor.
Microservice AI (Python & Flask): Layanan komputasi khusus untuk menjalankan inferensi deep learning secara terisolasi—menjalankan pemrosesan citra, klasifikasi teks bahasa Indonesia, dan ekstraksi entitas lokasi/waktu tanpa membebani server aplikasi utama.

Pendekatan Teknis & Pemilihan Teknologi

Alasan pemilihan teknologi dan alur proses data
Multimodal AI Late Fusion: Mengombinasikan probabilitas prediksi visual dari MobileNetV2 CNN dan analisis teks dari fine-tuned IndoBERT menggunakan skema weighted average untuk menentukan klasifikasi akhir tingkat kerusakan secara akurat.
Named Entity Recognition (NER): Memanfaatkan arsitektur IndoBERT Token Classification untuk mengekstrak entitas lokasi (LOC) dan waktu (TIME) langsung dari deskripsi naratif warga.
Duplicate Detection & Spatial Analysis: Menggunakan perhitungan jarak Haversine formula dan spatial clustering (radius 100 meter) untuk mendeteksi laporan serupa di lokasi yang sama serta memfasilitasi konsensus warga.
Multi-Factor Priority Scoring: Menerapkan algoritma scoring berbasis bobot: $$\text{Priority Score} = f(\text{AI Urgency}, \text{Spatial Density}, \text{Public Facility Proximity}, \text{Recency})$$ Skor ini mempertimbangkan kedekatan titik dengan fasilitas vital (rumah sakit, sekolah) berdasarkan data geospasial GeoJSON wilayah.
Data Integrity & Privacy: Transaksi database menggunakan MySQL InnoDB transaction rollbacks jika proses AI atau upload berkas gagal di tengah jalan, disertai masking otomatis pada email pelapor (t***@example.com) untuk menjaga privasi publik.

Peran & Tanggung Jawab

Tanggung jawab langsung dalam pengembangan modul
Merancang dan membangun arsitektur full-stack sistem, mulai dari UI publik & dashboard admin (React), RESTful API (Express.js), hingga integrasi layanan AI (Flask).
Menyiapkan pipeline inferensi multimodal: fine-tuning dan integrasi model IndoBERT (klasifikasi & NER) serta CNN MobileNetV2 untuk klasifikasi citra kerusakan jalan.
Mengimplementasikan logika bisnis inti: formula kalkulasi skor prioritas dinamis, algoritma deteksi laporan berulang berbasis geolokasi, dan pemetaan otomatis ke admin dinas terkait.
Merancang skema basis data MySQL relasional beserta manajemen transaksi database (ACID) untuk memastikan integritas data laporan, linimasa audit, dan log notifikasi.

Hasil & Dampak Proyek

Pencapaian fungsional dan pengujian hasil implementasi
Berhasil mengintegrasikan 3 model AI lokal (klasifikasi teks IndoBERT, ekstraksi NER IndoBERT, dan CNN MobileNetV2) ke dalam satu alur kerja pelaporan secara real-time.
Mengurangi beban verifikasi manual dinas melalui klasifikasi otomatis dan auto-assignment berbasis departemen yang relevan.
Membantu efisiensi penanganan perbaikan jalan dengan sistem scoring prioritas objektif berbasis data spasial dan urgensi kerusakan.
Memberikan transparansi publik dengan fitur tracking kode unik (LP-YYYYMMDD-XXXX) dan linimasa status penyelesaian yang dapat dipantau oleh pelapor kapan saja.
Copied email to clipboard!