What did we do?
We computed the flood probability for the next 3 days for Malaysia's 16 states. Inputs: open weather/rainfall data, GloFAS discharge forecasts at 34 river points (51-member ensemble) and an observed flood catalogue of 239 rows (GDACS 100 + compiled 139). The model was built and calibrated only on the years 2001-01-01 → 2019-12-31 (111 024 state-days); the period 2020-01-01 → 2026-10-01 was tested once, never seen before. Today we compared yesterday's forecast with official/public flood reports. The quantum layer was tested only in shadow mode against its classical twins on the same data; no quantum component that fails the acceptance gate enters the forecast.
Data
Rainfall/temperature forcing, 34 GloFAS stations, 239-row flood catalogue
GloFAS 51 members
River discharge ensemble: how many members exceed the 2/5/20-year discharge
Calibration
Raw score → probability; only 2001-01-01 → 2019-12-31 (111 024 state-days)
Alert
16 states × 3 days: P(1 d), P(1–3 d), river colour
Verification
Yesterday's forecast ↔ today's official/public flood reports, evidence-linked log
Quantum shadow gate
VQC/QUBO vs classical twin; no acceptance unless the CI excludes zero
00_panel/calisma.json10_dogrulama/summary.json00_panel/summary.jsonData sources and freshness
| DATA | FRESHNESS | FILE |
|---|---|---|
| Rainfall/temperature forcing (engine) | observations end 4 November 2026 | 07_alert/motor_kosusu.json |
| Numerical weather prediction | Open-Meteo best_match hourly — forecast 5 Nov 2026 06:14 TRT (5 Nov 11:14 MYT) | 07_alert/tahmin_2026-11-05.json |
| River discharge | GloFAS v4 reanalysis + forecast (Open-Meteo flood API) — 51 members | 07_alert/tahmin_2026-11-05.json |
| Flood catalogue (training/test ground truth) | 239 rows, compiled 26 October 2026 | 01_envanter/gercek_kaynaklari.json |
| Verification sources for yesterday's forecast | JKM InfoBencana, GDACS, news/Bernama — fetched 5 Nov 2026 06:29 TRT (5 Nov 11:29 MYT) | 10_dogrulama/kaynaklar_2026-11-04.json |
What did we forecast?
In the 5 November 2026 forecast the highest 3-day flood probability is Kedah, at 0.6%. Next: Perak, Pahang. Probability is low in the other states. These numbers say how often flooding was seen on days with the same signal in the calibration period; they are not a yes/no decision.
All states table
| STATE | P(1 D) | P(1–3 D) | RIVER COLOUR | P(>Q2) | P(>Q5) | STATION | CONFIDENCE |
|---|---|---|---|---|---|---|---|
| Kedah | 0.2% | 0.6% | none | 0% | 0% | Sg Kedah Alor Setar | high |
| Perak | 0.2% | 0.4% | none | 0% | 0% | Sg Perak Teluk Intan | high |
| Johor | 0.1% | 0.2% | none | 0% | 0% | Sg Muar Buloh Kasap | high |
| Kelantan | 0.1% | 0.2% | none | 0% | 0% | Sg Kelantan Guillemard | high |
| Pahang | 0.1% | 0.2% | none | 0% | 0% | Sg Pahang Temerloh | high |
| Terengganu | 0.1% | 0.2% | none | 0% | 0% | Sg Terengganu | high |
| Kuala Lumpur | 0% | 0.1% | none | 0% | 0% | Sg Klang KL | high |
| Labuan | 0% | 0.1% | none | — | — | high | |
| Melaka | 0% | 0.1% | none | 0% | 0% | Sg Melaka | high |
| Negeri Sembilan | 0.1% | 0.1% | none | 0% | 0% | Sg Linggi | high |
| Perlis | 0% | 0.1% | none | 2% | 0% | Sg Perlis Kangar | high |
| Pulau Pinang | 0.1% | 0.1% | none | 0% | 0% | Sg Juru/Perai | high |
| Putrajaya | 0% | 0.1% | none | 0% | 0% | Sg Langat Putrajaya | high |
| Sabah | 0% | 0.1% | none | 0% | 0% | Sg Padas Beaufort | high |
| Sarawak | 0% | 0.1% | none | 0% | 0% | Batang Rajang Sibu | high |
| Selangor | 0% | 0.1% | none | 0% | 0% | Sg Klang Klang | high |
07_alert/alert_2026-11-05.json, 07_alert/summary.json, 07_alert/alert_2026-11-05.geojsonHow well did we do?
a) Real-time verification live · operational
We compared the day-1 forecast issued on the morning of 4 November 2026 with official and public flood reports published for 5 November 2026 (checked: 5 Nov 2026 06:29 TRT (5 Nov 11:29 MYT)). There was flooding in 32 states: 4 hits, 28 misses; we also raised a false alarm in 2 states.
| STATE | WE SAID YESTERDAY: P(1 D) | ALARM? | OBSERVED | OUTCOME | STATUS | EVIDENCE |
|---|---|---|---|---|---|---|
| Selangor | 0% | — | flood | Miss | verified | JKM InfoBencana (updated 2026-11-05T11:01:00+08:00): Banjir PPS 1 open, Kuala Selangor, victims 642, opened 2026-11-02 | JKM InfoBencana (updated 2026-11-05T11:01:00+08:00): Banjir PP… infobencanajkmv2.jkm.gov.my |
| Kelantan | 0% | — | flood | Miss | verified | JKM InfoBencana (updated 2026-11-05T11:01:00+08:00): Banjir PPS 1 open, Gua Musang, victims 22, opened 2026-11-04 infobencanajkmv2.jkm.gov.my |
14 states with no flood and no alarm from us (correct silence)
| STATE | WE SAID YESTERDAY: P(1 D) | ALARM? | OBSERVED | OUTCOME | STATUS | EVIDENCE |
|---|---|---|---|---|---|---|
| Perak | 0.2% | — | no flood report | Correct silence | provisional (day not closed) | no flood report (JKM national table + scanned news); day not closed yet (11:29 MYT) — will recheck on next run infobencanajkmv2.jkm.gov.my |
| Kedah | 0.1% | — | no flood report | Correct silence | provisional (day not closed) | no flood report (JKM national table + scanned news); day not closed yet (11:29 MYT) — will recheck on next run infobencanajkmv2.jkm.gov.my |
| Negeri Sembilan | 0.1% | — | no flood report | Correct silence | provisional (day not closed) | no flood report (JKM national table + scanned news); day not closed yet (11:29 MYT) — will recheck on next run infobencanajkmv2.jkm.gov.my |
| Johor | 0.1% | — | no flood report | Correct silence | provisional (day not closed) | no flood report (JKM national table + scanned news); day not closed yet (11:29 MYT) — will recheck on next run infobencanajkmv2.jkm.gov.my |
| Pulau Pinang | 0.1% | — | no flood report | Correct silence | provisional (day not closed) | no flood report (JKM national table + scanned news); day not closed yet (11:29 MYT) — will recheck on next run infobencanajkmv2.jkm.gov.my |
| Perlis | 0.1% | — | no flood report | Correct silence | provisional (day not closed) | no flood report (JKM national table + scanned news); day not closed yet (11:29 MYT) — will recheck on next run infobencanajkmv2.jkm.gov.my |
| Pahang | 0.1% | — | no flood report | Correct silence | provisional (day not closed) | no flood report (JKM national table + scanned news); day not closed yet (11:29 MYT) — will recheck on next run infobencanajkmv2.jkm.gov.my |
| Kuala Lumpur | 0% | — | no flood report | Correct silence | provisional (day not closed) | no flood report (JKM national table + scanned news); day not closed yet (11:29 MYT) — will recheck on next run infobencanajkmv2.jkm.gov.my |
| Putrajaya | 0% | — | no flood report | Correct silence | provisional (day not closed) | no flood report (JKM national table + scanned news); day not closed yet (11:29 MYT) — will recheck on next run infobencanajkmv2.jkm.gov.my |
| Melaka | 0% | — | no flood report | Correct silence | provisional (day not closed) | no flood report (JKM national table + scanned news); day not closed yet (11:29 MYT) — will recheck on next run infobencanajkmv2.jkm.gov.my |
| Terengganu | 0% | — | no flood report | Correct silence | provisional (day not closed) | no flood report (JKM national table + scanned news); day not closed yet (11:29 MYT) — will recheck on next run infobencanajkmv2.jkm.gov.my |
| Sabah | 0% | — | no flood report | Correct silence | provisional (day not closed) | no flood report (JKM national table + scanned news); day not closed yet (11:29 MYT) — will recheck on next run infobencanajkmv2.jkm.gov.my |
| Sarawak | 0% | — | no flood report | Correct silence | provisional (day not closed) | no flood report (JKM national table + scanned news); day not closed yet (11:29 MYT) — will recheck on next run infobencanajkmv2.jkm.gov.my |
| Labuan | 0% | — | no flood report | Correct silence | provisional (day not closed) | no flood report (JKM national table + scanned news); day not closed yet (11:29 MYT) — will recheck on next run infobencanajkmv2.jkm.gov.my |
10_dogrulama/dogrulama_2026-11-04_gun1.json, 10_dogrulama/verif_log.json10_dogrulama/operasyonel_skorlar.json10_dogrulama/operasyonel_skorlar.json10_dogrulama/operasyonel_skorlar.json10_dogrulama/operasyonel_skorlar.json10_dogrulama/operasyonel_skorlar.json10_dogrulama/operasyonel_skorlar.json10_dogrulama/operasyonel_skorlar.json- This is only 10 day(s) of forecasts × 160 states. Far too small to judge skill; that is why the confidence intervals are so wide.
- State-days of the same storm are not independent of each other; a single weather system determines the whole result.
- “Provisional” rows were checked before the day closed; they are re-checked in the next run.
- The simple persistence rule did better than us yesterday: flooding continued in states that were already flooded.
b) 2020–2026 held-out period hindcast hindcast · kept separate
In the period 2020-01-01 → 2026-10-01, the model caught 30 of 117 flood events it had never seen. Detection score CSI 0.179 (95% confidence interval 0.128–0.243).
04_manset_26yil/manset_26yil.json04_manset_26yil/manset_26yil.json06_kalibrasyon/summary.json06_kalibrasyon/aksiyon_esikleri_tutulan.json- This is a hindcast: the question “what would we have said that day?” using past weather data. The rainfall input is the MERRA-2 reanalysis, not a real-time forecast; real-time performance may be lower.
- CSI 0.179 is a detection score: caught / (caught + missed + false alarms). It is not an “accuracy percentage”; because floods are rare, an accuracy percentage comes out misleadingly high, so we never use one.
- Difference vs GloFAS (GloFAS − ours): −0.041 [−0.100; +0.014]. The interval includes zero; so we cannot claim to be significantly better than GloFAS.
- Probabilities stay too low in the held-out period: the observed flood frequency is 6.62–36.59 times what was forecast. Most of this comes from the post-2020 flood catalogue being 10.32 times denser (more records).
- New label and model variants (skill_v2) were tried; decision: “NO significant gain (interval includes zero or is unfavourable)”. We do not hide the deterioration; the current model is kept.
- Selection and tuning were done only on 2001-01-01 → 2019-12-31; the period 2020-01-01 → 2026-10-01 was reported once.
04b_skill_v2/skill_v2_tablo.json, 06_kalibrasyon/guvenilirlik_tutulan.json, 04b_skill_v2/summary.jsonWhere is our edge?
Our edge is not being more accurate but being open, measured and honest: open data, calibrated probabilities with confidence intervals, testing on a never-seen period, and a public verification log every day. Although our detection score looks higher than GloFAS, the difference is not statistically significant.
Open data, reproducible
239-row open flood catalogueAll inputs are open sources: GloFAS v4 / Open-Meteo, NASA POWER/MERRA-2, GDACS, JKM InfoBencana and news records. 34 river stations. No licence fees; anyone can reproduce the same result.
Source:01_envanter/gercek_kaynaklari.jsonHonest, held-out period test
0.179CSI, 95% GA [0.128 – 0.243]The model was built on 2001-01-01 → 2019-12-31; the 117 events in the period 2020-01-01 → 2026-10-01 were scored once, never seen before. Every score is given with a confidence interval.
Source:04_manset_26yil/manset_26yil.jsonCalibrated probability, not yes/no
0.02523Brier skill score vs climatology (held-out period)A probability in percent for each state; calibrated on 111 024 state-days. Positive but small skill. Probabilities stay too low; we state this openly in section 3.
Source:06_kalibrasyon/summary.jsonPublic verification log every day
480logged state-day forecastsEvery forecast is matched with official/public reports the next day and written to a permanent log with source links (42 distinct URLs). Bad days are not deleted either.
Source:10_dogrulama/verif_log.jsonEnsemble uncertainty
51-member GloFAS ensembleThe river signal is not a single forecast: how many members exceed the 2/5/20-year discharge is shown separately (yellow/red/purple).
Source:07_alert/summary.jsonQPU-ready quantum layer + acceptance gate
10quantum device paths definedCode to connect to IBM, Origin and other devices is ready; but no quantum component can enter the forecast without beating its classical twin by a pre-registered threshold (confidence interval above zero).
Source:08a_cihaz/summary.json
- QUBO sensor placement (simulated annealing): optimality gap vs classical MILP 0.0% — same as the classical solver, not superior; did not pass the gate (over budget; simulator result — hardware run required before operational use). Mode: shadow
08b_qf_my/kabul_defteri.json, 08b_qf_my/summary.json- Resolution: we work at state scale and do not produce water-depth maps; commercial products and the national system work at basin, station or even building scale.
- Authority and track record: the official warning authority is JPS; GloFAS and Google are operational 24/7 and have peer-reviewed publications. We do not replace JPS; we are a separate second opinion.
- Lead time: 1–3 days for us; global systems and JPS give a longer horizon.
- Peer review: we have no peer-reviewed publication yet.
- None of the reviewed competitors publishes calibrated probabilities and confidence intervals for Malaysian states; that is our difference, not accuracy itself.
rakipler.json (RAKIP_ANALIZI)Which file is what?
Start with this page. For details see RAPOR.html. The rest is raw data.
RAPOR.htmlInteractive maptoday's alert, states clickable (internet required) · 07_alert/alert_2026-11-05_harita.htmlToday's forecast table (CSV)16 states, P(1 d), P(1–3 d), river · 07_alert/alert_2026-11-05.csvVerification of yesterday's forecast (CSV)outcome + evidence per state · 10_dogrulama/dogrulama_2026-11-04_gun1.csvPermanent verification logall forecast–observation matches, source URLs · 10_dogrulama/verif_log.csv2001–2026 hindcastCSI, POD, FAR, confidence intervals · 04_manset_26yil/manset_26yil.csvQuantum acceptance ledgergate decision for each quantum component · 08b_qf_my/kabul_defteri.csvFile indexevery file: section, description, sha256 · MANIFEST.jsonNumber sources for this pageevery number → file + key path · ozet_kaynaklar.json