tentang seismicid
sistem forecast probabilitas gempa bumi indonesia berbasis ensemble machine learning + physics-informed features. open-source, dapat dijalankan lokal.
apa yang dihasilkan
Untuk setiap area di Indonesia (grid 0.5° × 0.5°, sekitar 55 km), sistem menghitung probabilitas gempa dengan magnitudo melebihi ambang tertentu dalam horizon waktu yang dipilih. Format output:
"Sulawesi Tengah - Palu, 12.4% probabilitas M≥5.0 dalam 30 hari"
Tersedia 4 horizon (7/14/30/60 hari) dan 4 threshold magnitudo (M≥4.5/5.0/5.5/6.0) — total 16 head klasifikasi independen.
sumber data
- USGS ComCat — sumber utama, riwayat 2000–sekarang.
- BMKG TEWS — augmentasi real-time untuk gempa kecil di Indonesia.
- GADM — batas administratif (provinsi, kabupaten).
- USGS Slab2.0 — geometri zona subduksi.
- Database patahan aktif Indonesia (PUSGEN 2017 jika tersedia, atau substitut dari GEM Active Faults).
Dedup antar sumber: Δ waktu ≤ 60 detik, Δ posisi ≤ 0.5°, Δ magnitudo ≤ 0.5. USGS dijadikan canonical.
pipeline
- Ingestion + dedup — fetch USGS+BMKG, dedup, simpan ke Parquet (historis) dan SQLite (live).
- Declustering Reasenberg — pisahkan mainshock vs aftershock supaya statistik latar tidak bias.
- Mc estimation — magnitudo of completeness per region per epoch (5 tahun) menggunakan metode Maximum Curvature.
- Feature engineering — ~25 fitur per (cell, snapshot):
- Statistik aktivitas: jumlah event 30/90/365 hari, magnitudo maks, kedalaman rata-rata, energi seismik.
- b-value multi-window (90/365/1095 hari) + slope 1 tahun.
- Inter-event time mean + CV (clustering indicator).
- Time since last M≥4 / M≥5.
- Activity trend 90 hari (slope linear).
- Physics-informed: jarak ke patahan aktif terdekat, tipe patahan, slab depth, Z-value quiescence (ZMAP).
- Spatial neighbor aggregations (8 cell terdekat).
- Multi-output training — XGBoost + LightGBM, satu model per head dengan
scale_pos_weightper imbalance ratio. - Calibration — Platt vs Isotonic vs Beta, per head dipilih yang Brier-nya terbaik di validation set.
- Ensemble — XGBoost + LightGBM + ETAS Poisson baseline, weighted average.
- Bayesian blending — posterior = (n_evidence × ML + α × prior) / (n + α). Cell dengan riwayat sedikit fall back ke Poisson prior.
evaluasi
- ROC-AUC dan Brier score per head.
- Brier Skill Score vs Poisson baseline (target: > 0).
- Reliability diagram — kalibrasi per bin probabilitas.
- CSEP-style tests — N-test, L-test, S-test (Schorlemmer 2007).
- Molchan diagram — miss rate vs space-time fraction.
- Leave-one-region-out CV — generalisasi ke region yang tidak dilihat saat training (Sumatera/Jawa/Sulawesi/Maluku-Papua).
cadence operasional
Scheduler internal (APScheduler) menjalankan:
- Realtime fetch tiap 15 menit.
- Forecast recompute tiap 1 jam.
- Retraining mingguan (Minggu 02:00 UTC).
limitasi & disclaimer
- Output adalah probabilitas, bukan prediksi deterministik kapan/di mana persisnya gempa terjadi.
- State-of-the-art seismologi pun belum bisa memprediksi waktu/lokasi gempa secara akurat. Sistem ini ditujukan untuk relative risk ranking antar area.
- Probabilitas individual dengan magnitudo tinggi (M≥6) inherently rendah (event langka). Jangan tafsirkan "1%" sebagai "tidak akan terjadi".
- Pra-syarat ML mode: data historis bulk + pelatihan model. Tanpa itu, sistem fall-back ke physics-aware demo seed.
lisensi & atribusi
- Kode: MIT License.
- Data USGS: domain publik.
- Data BMKG: lihat ketentuan di data.bmkg.go.id.
- GADM: gratis untuk non-komersial, lihat gadm.org/license.html.
- USGS Slab2.0: domain publik, atribusi DOI
10.5066/F7PV6JNV.