The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.
Explainable Artificial Intelligence Tools for Hydro-Climate Modelling
| Name | Role | Institution |
|---|---|---|
| Sadikul Islam | Author, Maintainer (aut, cre) |
ICAR-Indian Institute of Soil and Water Conservation, Dehradun, India |
| Shakir Ali | Author (aut) |
ICAR-Indian Institute of Soil and Water Conservation, Dehradun, India |
| Rajesh Kaushal | Author (aut) |
ICAR-Indian Institute of Soil and Water Conservation, Dehradun, India |
Maintainer: sadikul.islamiasri@gmail.com
xaiHydro provides a unified, hydrology-aware workflow
for applying post-hoc Explainable Artificial Intelligence (XAI) to any
trained hydro-climate predictive model. Three complementary attribution
frameworks are implemented:
| Method | Reference | xaiHydro function |
|---|---|---|
| SHAP | Lundberg & Lee (2017) | hydro_shap() |
| LIME | Ribeiro et al. (2016) | hydro_lime() |
| PDP / ALE | Friedman (2001); Apley & Zhu (2020) | hydro_pdp() |
| Permutation importance | Breiman (2001) | hydro_importance() |
| Breakdown profiles | Biecek & Burzykowski (2021) | hydro_breakdown() |
An internal model registry auto-detects 13 machine-learning frameworks without user-written prediction wrappers. Hydrology-standard metrics NSE, KGE, and PBIAS are computed alongside RMSE and MAE.
Two fully synthetic datasets calibrated to Indian river-basin
conditions enable complete reproducibility without proprietary gauge
records: - sim_streamflow_data() – daily
hydro-meteorological predictors and streamflow response (m3/s) -
sim_drought_data() – monthly predictors and SPEI drought
index
# CRAN (recommended)
install.packages("xaiHydro")library(xaiHydro)
# 1. Generate data
df <- sim_streamflow_data(n = 365, seed = 2026)
y <- df$streamflow
X <- df[, setdiff(names(df), "streamflow")]
# 2. Train any supported model
library(randomForest)
rf <- randomForest(x = X, y = y, ntree = 300)
# 3. Build the explainer (model class auto-detected)
exp <- hydro_explainer(rf, X, y, variable = "streamflow", units = "m3/s")
# 4. SHAP global summary
shv <- hydro_shap(exp, nsim = 50)
plot_shap_summary(shv, top_n = 8)
# 5. LIME local explanation
lr <- hydro_lime(exp, new_obs = X[1, , drop = FALSE])
plot_lime_hydro(lr)
# 6. PDP / ALE profiles
pdp <- hydro_pdp(exp, variable = c("precipitation", "soil_moisture"))
plot_pdp_hydro(pdp)
# 7. Permutation importance
imp <- hydro_importance(exp, B = 20)
plot_importance_hydro(imp)
# 8. Full report panel
hydro_xai_report(exp, nsim = 50, save_path = "xaiHydro_report.png")citation("xaiHydro")Package:
Islam, S., Ali, S., & Kaushal, R. (2026). xaiHydro: Explainable AI Tools for Hydro-Climate Modelling. R package version 0.1.0. https://CRAN.R-project.org/package=xaiHydro
Accompanying book chapter:
Islam, S., Dheeraj, A., Ali, S., Kaushal, R., & Venkatesh, G. (2026). Explainable Artificial Intelligence for Hydro-Climatic Modelling: Methods, Applications, and Implementation Using the xaiHydro R Package. In S. K. Chandniha, A. Mondal, S. Kundu, A. Pandey, & D. Naidu (Eds.), Hydro-Climate Analytics: Remote Sensing, AI and Geospatial Modelling. Springer.
Key review to cite alongside:
Zounemat-Kermani, M., & Kheimi, M. (2026). Explainable artificial intelligence in hydrology: A review. Water Resources Management, 40(3), 106. https://doi.org/10.1007/s11269-025-04435-9
GPL-3 (C) 2026 Sadikul Islam, Shakir Ali & Rajesh Kaushal
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.