Skip to content
INOVATIF, PROFESIONAL, DAN BERKEPRIBADIAN
facebook
youtube
instagram
Pusat Pengelolaan Digitalisasi Penjaminan Mutu Universitas Medan Area
Call Support 0823-6994-9970
Email Support [email protected]
Location Jl. Kolam No. 1 Medan Estate
  • BERANDA
  • TENTANG
    • PROFIL
    • VISI DAN MISI
    • STRUKTUR ORGANISASI
  • BERITA KEGIATAN
  • KERJASAMA
  • LAYANAN & INFORMASI
    • APLIKASI
      • PERPUSTAKAAN UMA
      • ACADEMIC ONLINE CAMPUS (AOC)
      • REPOSITORI UMA
      • TRACER STUDY (ALUMNI)
      • JURNAL
      • E-LEARNING UMA
      • DIREKTORI MAHASISWA
    • ARSIP
      • PERUBAHAN DATA MAHASISWA DI PDDIKTI
      • Buku Pedoman Universitas Medan Area
      • KURIKULUM
        • Kurikulum Teknik
        • Kurikulum Pertanian
        • Kurikulum Ekonomi dan Bisnis
        • Kurikulum Hukum
        • Kurikulum Isipol
        • Kurikulum Psikologi
        • Kurikulum Saintek
        • Kurikulum Agama Islam
      • Kalender Akademik Universitas Medan Area
      • Artikel
    • Helpdesk P2DIK
  • id
    • en
    • id

Penerapan Machine Learning untuk Prediksi Curah Hujan Berbasis Data BMKG

Home > Artikel > Penerapan Machine Learning untuk Prediksi Curah Hujan Berbasis Data BMKG

Penerapan Machine Learning untuk Prediksi Curah Hujan Berbasis Data BMKG

Posted on 21 Januari 202621 Januari 2026 by Anisa Rahma Nasution
0

Curah hujan merupakan salah satu unsur iklim yang memiliki peranan penting dalam berbagai sektor kehidupan, seperti pertanian, pengelolaan sumber daya air, transportasi, dan mitigasi bencana alam. Di Indonesia, yang memiliki karakteristik iklim tropis dengan variabilitas cuaca yang tinggi, informasi prediksi curah hujan yang akurat sangat dibutuhkan untuk mendukung perencanaan dan pengambilan keputusan yang tepat.

Badan Meteorologi, Klimatologi, dan Geofisika (BMKG) sebagai lembaga resmi penyedia data meteorologi di Indonesia telah mengumpulkan data cuaca dan iklim secara berkelanjutan dari berbagai stasiun pengamatan. Data tersebut mencakup informasi curah hujan, suhu udara, kelembapan, tekanan udara, serta parameter meteorologi lainnya yang bersifat deret waktu (time series). Namun, metode prediksi konvensional yang berbasis statistik sering kali mengalami keterbatasan dalam menangkap pola non-linear dan kompleks yang terdapat pada data cuaca.

Seiring dengan perkembangan teknologi komputasi, pendekatan machine learning (ML) menjadi alternatif yang menjanjikan dalam bidang prediksi cuaca. Machine learning mampu mempelajari pola tersembunyi dari data historis dalam jumlah besar dan menghasilkan model prediksi yang adaptif terhadap perubahan pola iklim. Berbagai algoritma ML, seperti Random Forest, Support Vector Machine, hingga model deep learning seperti Long Short-Term Memory (LSTM), telah menunjukkan kinerja yang baik dalam pemodelan data deret waktu, termasuk data curah hujan.

Oleh karena itu, penelitian ini bertujuan untuk menerapkan metode machine learning dalam memprediksi curah hujan dengan memanfaatkan data historis yang bersumber dari BMKG. Melalui proses pra-pemrosesan data, rekayasa fitur, serta evaluasi model yang sistematis, diharapkan diperoleh model prediksi yang memiliki tingkat akurasi yang lebih baik dibandingkan metode tradisional. Hasil penelitian ini diharapkan dapat memberikan kontribusi dalam pengembangan sistem prediksi curah hujan yang lebih akurat dan aplikatif, khususnya untuk mendukung upaya mitigasi bencana dan perencanaan berbasis iklim di Indonesia.

Sumber dan Karakteristik Data BMKG

BMKG menyediakan data klimatologi dan meteorologi seperti:

  • Curah hujan harian/bulanan (mm)

  • Suhu udara (min, max, rata-rata)

  • Kelembapan

  • Tekanan udara

  • Kecepatan & arah angin

  • Radiasi matahari

  • Data waktu (tanggal, bulan, musim)

Karakteristik penting:

  • Time series

  • Sering memiliki missing values

  • Bersifat musiman (musim hujan & kemarau)

  • Non-linear dan dipengaruhi banyak variabel

Formulasi Masalah ML

Prediksi curah hujan dapat diformulasikan sebagai:

a. Regresi

  • Output: nilai curah hujan (mm)

  • Contoh: “Berapa mm hujan besok?”

b. Klasifikasi

  • Output: kategori hujan
    (Tidak hujan / Ringan / Sedang / Lebat)

  • Cocok untuk peringatan dini bencana

Pra-pemrosesan Data

Tahap krusial dalam proyek ML klimatologi:

  1. Data Cleaning

    • Mengatasi missing value (interpolasi, mean, forward fill)

    • Menghapus outlier ekstrem

  2. Feature Engineering

    • Lag features (hujan H-1, H-2, H-7)

    • Moving average

    • Encoding bulan/musim

    • Indeks iklim (jika ada)

  3. Normalisasi

    • Min-Max Scaling atau StandardScaler

Algoritma Machine Learning yang Umum Digunakan

a. Model Statistik (Baseline)

  • Linear Regression

  • ARIMA / SARIMA

b. Machine Learning Klasik

  • Random Forest ⭐ (paling populer untuk data cuaca)

  • Gradient Boosting (XGBoost, LightGBM)

  • Support Vector Regression (SVR)

  • K-Nearest Neighbor (KNN)

c. Deep Learning (Time Series)

  • LSTM / GRU ⭐⭐⭐

  • CNN-LSTM hybrid

  • Temporal Convolutional Network (TCN)

Untuk data BMKG jangka panjang, LSTM + fitur lag sering memberikan hasil terbaik.

Skema Pelatihan Model

  1. Split data berbasis waktu
    (tidak random!)

    • Train: 70%

    • Validation: 15%

    • Test: 15%

  2. Cross-validation khusus time series
    (rolling / walk-forward validation)

Evaluasi Model

Untuk regresi:

  • MAE (Mean Absolute Error)

  • RMSE

  • R² Score

Untuk klasifikasi:

  • Accuracy

  • Precision, Recall, F1-score

  • Confusion Matrix

Contoh Arsitektur Sederhana (LSTM)

Input:

[Hujan H-7, H-6, …, H-1,
Suhu, Kelembapan, Angin]

Output:

Curah hujan hari H

Tantangan Utama

  • Data tidak lengkap / tidak konsisten antar stasiun

  • Pola cuaca ekstrem sulit diprediksi

  • Overfitting pada musim tertentu

  • Resolusi spasial terbatas

Aplikasi Nyata

  • Sistem peringatan dini banjir

  • Perencanaan pertanian

  • Manajemen sumber daya air

  • Smart city & climate risk analysis

Tools yang Umum Digunakan

  • Python (pandas, numpy)

  • scikit-learn

  • TensorFlow / PyTorch

  • Matplotlib / Seaborn

  • Jupyter Notebook

Contoh pipeline ML lengkap (dari data BMKG → prediksi)

Berikut contoh pipeline Machine Learning lengkap untuk prediksi curah hujan berbasis data BMKG, dari data mentah sampai evaluasi model. Contoh ini realistis dan sering dipakai untuk riset/skripsi.

1. Alur Pipeline ML (End-to-End)

Data BMKG
↓
Data Cleaning
↓
Feature Engineering (lag, musim)
↓
Train-Test Split (time series)
↓
Model Training
↓
Evaluasi
↓
Prediksi

2. Contoh Struktur Data BMKG

Misal data harian stasiun cuaca:

tanggal hujan suhu kelembapan angin
2020-01-01 12.5 27.1 85 2.3
2020-01-02 0.0 27.8 80 2.0

3. Implementasi Pipeline (Python)

3.1 Import Library

import pandas as pd
import numpy as np

from sklearn.model_selection import TimeSeriesSplit
from sklearn.preprocessing import StandardScaler
from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import mean_absolute_error, mean_squared_error

import matplotlib.pyplot as plt

3.2 Load Data BMKG

df = pd.read_csv(“data_bmkg.csv”)
df[‘tanggal’] = pd.to_datetime(df[‘tanggal’])
df = df.sort_values(‘tanggal’)

3.3 Data Cleaning

# Tangani missing value
df = df.interpolate(method=’time’)

# Pastikan tidak ada nilai negatif pada hujan
df[‘hujan’] = df[‘hujan’].clip(lower=0)

3.4 Feature Engineering (Kunci Akurasi)

a. Fitur Lag Curah Hujan

for lag in [1, 3, 7]:
df[f’hujan_lag_{lag}’] = df[‘hujan’].shift(lag)

b. Fitur Musiman

df[‘bulan’] = df[‘tanggal’].dt.month
df[‘hari’] = df[‘tanggal’].dt.day

c. Hapus NaN akibat lag

df = df.dropna()

3.5 Definisi Fitur & Target

X = df.drop(columns=[‘tanggal’, ‘hujan’])
y = df[‘hujan’]

3.6 Train-Test Split (Time Series)

Tidak boleh random split

split_index = int(len(df) * 0.8)

X_train, X_test = X.iloc[:split_index], X.iloc[split_index:]
y_train, y_test = y.iloc[:split_index], y.iloc[split_index:]

3.7 Normalisasi

scaler = StandardScaler()
X_train_scaled = scaler.fit_transform(X_train)
X_test_scaled = scaler.transform(X_test)

3.8 Training Model (Random Forest)

model = RandomForestRegressor(
n_estimators=200,
max_depth=10,
random_state=42
)

model.fit(X_train_scaled, y_train)

3.9 Evaluasi Model

y_pred = model.predict(X_test_scaled)

mae = mean_absolute_error(y_test, y_pred)
rmse = np.sqrt(mean_squared_error(y_test, y_pred))

print(“MAE:”, mae)
print(“RMSE:”, rmse)

3.10 Visualisasi Hasil

plt.figure(figsize=(10,5))
plt.plot(y_test.values, label=’Aktual’)
plt.plot(y_pred, label=’Prediksi’)
plt.legend()
plt.title(“Prediksi Curah Hujan”)
plt.show()

Output Pipeline

Model dapat digunakan untuk:

  • Prediksi hujan harian

  • Simulasi skenario cuaca

  • Sistem peringatan dini

prediksi_besok = model.predict(X_test_scaled[-1].reshape(1, -1))
print(“Prediksi hujan besok (mm):”, prediksi_besok[0])

Pengembangan Lanjutan (Advanced)

Jika ingin level skripsi / jurnal:

  • Ganti model → XGBoost / LSTM

  • Tambah fitur:

    • Moving average hujan

    • Kategori ENSO

  • Multi-station (spasial)

  • Bandingkan beberapa model

Versi Deep Learning (Singkat)

Pipeline LSTM:

Scaling → Windowing (H-7) → LSTM → Dense → Output

Penerapan machine learning untuk prediksi curah hujan berbasis data BMKG menunjukkan bahwa pendekatan data-driven mampu menangkap pola cuaca yang kompleks dan bersifat non-linear. Melalui tahapan pipeline yang sistematis—mulai dari pra-pemrosesan data, feature engineering, pemilihan model, hingga evaluasi—model machine learning seperti Random Forest atau LSTM dapat memberikan performa prediksi yang lebih baik dibandingkan metode konvensional, terutama pada data historis jangka panjang.

Meskipun demikian, tantangan seperti kualitas data, ketidakseimbangan kelas hujan, serta kejadian cuaca ekstrem masih menjadi kendala utama yang perlu diperhatikan. Oleh karena itu, pengembangan lanjutan dapat dilakukan dengan menambahkan variabel klimatologi yang lebih lengkap, pendekatan deep learning yang lebih canggih, serta integrasi data spasial antar stasiun BMKG.

Secara keseluruhan, penelitian ini diharapkan dapat menjadi dasar pengembangan sistem prediksi curah hujan yang lebih akurat dan aplikatif, khususnya untuk mendukung pengambilan keputusan di bidang mitigasi bencana, pertanian, dan pengelolaan sumber daya air di Indonesia.

Post Views: 652

p2dpm_uma

Jalan Kolam Nomor 1 Medan Estate

#PRESTASIDOSENUMA Selamat & Sukses Kepada 23 Dosen #PRESTASIDOSENUMA
Selamat & Sukses Kepada 23 Dosen Universitas Medan Area atas Penandatanganan Kontrak Program Penelitian & Pengabdian Kepada Masyarakat DPPM KEMDIKTISAINTEK Tahun Anggaran 2026
.
Informasi dan Pendaftaran Mahasiswa Baru :
➖➖➖➖➖➖➖
https://pmb.uma.ac.id
➖➖➖➖➖➖➖

Call Center UMA :
☎️0811 6013 888

#ptssehat #ptsterbaik #UMAkampusJuara #KampusUnggul
Get @reshare_app • @umabestari #REKORMURI Rektor U Get @reshare_app • @umabestari #REKORMURI
Rektor Universitas Medan Area Menjadi Salah Satu Pemateri Dalam Pemecahan Rekor MURI dalam Seminar 10 Pohon Ilmu dan Peserta Terbanyak yang di selenggarakan oleh Kantor LLDIKTI Wilayah I Sumut
.
Informasi dan Pendaftaran Mahasiswa Baru :
➖➖➖➖➖➖➖
https://pmb.uma.ac.id
➖➖➖➖➖➖➖

Call Center UMA :
☎️0811 6013 888

#ptssehat #PTSterbaik
#UMAkampusJuara #KampusUnggul
Get @reshare_app • @umabestari #KUNJUNGAN Kunjunga Get @reshare_app • @umabestari #KUNJUNGAN
Kunjungan Dr. dr. Delyuzar, M.Ked.(PA), Sp.PA(K), Ketua Umum Pengurus Wilayah (PW) Asosiasi Masjid Kampus
Indonesia (AMKI) Sumatera Utara ke Universitas Medan Area Dalam rangka melihat Pelaksanaan Pemotongan Hewan Qurban.
.
Informasi dan Pendaftaran Mahasiswa Baru :
➖➖➖➖➖➖➖
https://pmb.uma.ac.id
➖➖➖➖➖➖➖

Call Center UMA :
☎️0811 6013 888

#ptssehat #PTSterbaik
#UMAkampusJuara #KampusUnggul
Selamat Hari Raya Idul Adha 1447 H Selamat Hari Raya Idul Adha 1447 H
Yuk, buruan daftar sekarang! Yuk, buruan daftar sekarang!
Get @reshare_app • @umabestari #SOSIALISASI Dinas Get @reshare_app • @umabestari #SOSIALISASI
Dinas Pariwisata Medan dan Universitas Medan Area  berkolaborasi melaksanakan Sosialisasi Kompetisi Desain Logo HUT Kota Medan ke-436 Tahun 2026.
#PMBUMA2026 Yuk.. Join di Kampus Unggul Universi #PMBUMA2026 

Yuk.. Join di Kampus Unggul Universitas Medan Area. Dapatkan Beragam Fasilitas Pendidikan dan Beasiswa Hingga 100%. . 

Informasi dan Pendaftaran Mahasiswa Baru : 

➖➖➖➖➖➖➖
 https://pmb.uma.ac.id 
➖➖➖➖➖➖➖ 

Call Center UMA : 
☎️0811 6013 888 

#ptssehat #ptsterbaik #UMAkampusJuara
Get @reshare_app • @umabestari #JADWALUTSUMA Selam Get @reshare_app • @umabestari #JADWALUTSUMA
Selamat Melaksanakan Ujian Tengah Semester (UTS) Semester Genap Tahun Akademik 2025/2026 yang dilaksanakan tanggal 11 Mei s.d. 25 Mei 2026
.
Informasi dan Pendaftaran Mahasiswa Baru :
➖➖➖➖➖➖➖
https://pmb.uma.ac.id
➖➖➖➖➖➖➖

Call Center UMA :
☎️0811 6013 888

#ptssehat #ptsterbaik #UMAkampusJuara #KampusUnggul
Follow on Instagram

Lokasi P2DPM

url url url url url url url url url url url url

Kategori

  • Berita Terbaru
  • Pengumuman
  • Berita Kegiatan
  • Artikel

POSTINGAN TERPOPULER

  • Memahami Perbedaan Waktu: AM/PM, Zona Waktu, dan Sistem Jam
  • Cara Melihat IP Address di Semua Jenis Perangkat dan Jenis-Jenisnya
  • Dasar-Dasar Desain Grafis: Prinsip yang Harus Diketahui Pemula
  • Manfaat Pengelolaan Sumber Daya Alam Berkelanjutan Untuk Kehidupan
  • Pengertian Gelombang Longitudinal dan Contohnya dalam Kehidupan Sehari-Hari
KAMPUS 1
Jalan Kolam Nomor 1 Medan Estate / Jalan Gedung PBSI, Medan 20223
(061) 7360168, Call Canter : 0811-6013-888
[email protected]
KAMPUS 2
Jalan Sei Serayu Nomor 70 A / Jalan Setia Budi Nomor 79 B, Medan 20122
(061) 42402994, HP : 0811 607 259
[email protected]
© 2026 P2A2I - Universitas Medan Area