Spatial Interpolation using Bayesian Maximum Entropy (BME)

Provides an accessible and robust implementation of core BME methodologies for spatial prediction. It enables the systematic integration of heterogeneous data sources including both hard data (precise measurements) and soft interval data (bounded or uncertain observations) while incorporating prior knowledge and supporting variogram-based spatial modeling. The BME methodology is described in Christakos (1990) , Serre and Christakos (1999) and Duah (2025, 2026) .


Spatial Interpolation using Bayesian Maximum Entropy

The BMEmapping R package delivers a flexible, robust, and computationally optimized framework for spatial interpolation and uncertainty quantification using the Bayesian Maximum Entropy (BME) paradigm. Unlike traditional kriging frameworks that rely strictly on precise physical measurements (hard data), BMEmapping allows for the systematic integration of bounded uncertainty domains (soft-interval data) without resorting to linear or Gaussian assumptions.

The package features two operational geostatistical engines:

  • Classical BME (CBME): Integrates structural general-knowledge via user-defined theoretical variogram parameters.
  • Quantile-Based BME (QBME): Bypasses manual variogram fitting by internally constructing an ensemble of localized, quantile-specific variogram structures to capture spatial continuity adaptively across different levels of the data distribution.

Installation

You can install the development version of BMEmapping from GitHub using devtools:

# install.packages("devtools")
devtools::install_github("KinsprideDuah/BMEmapping")

Core Functions

Data Pipeline Configuration

  • bme_map Constructs a unified data object encapsulating coordinate structures, spatial attributes, hard measurements, and soft-interval constraints to condition the interpolation space.

Posterior Density Estimation

  • prob_zk Computes posterior densities using the CBME approach.
  • q_prob_zk Computes posterior densities using the QBME approach.

Probabilistic Spatial Prediction & Uncertainty Estimation

  • bme_predict Computes spatial point estimates (mean, median, or mode) using the CBME approach.
  • q_bme_predict Computes spatial point estimates (mean, median, or mode) using the QBME approach.
  • bme_predict_ci Constructs credible intervals using the CBME approach.
  • q_bme_predict_ci Constructs credible intervals using the QBME approach.

Model Validation & S3 Graphics

  • bme_cv Executes K-fold or exact Leave-One-Out Cross-Validation (LOOCV) at hard data locations using the CBME approach.
  • q_bme_cv Executes K-fold or exact LOOCV at hard data locations using the QBME approach.
  • summary() Provides standard geostatistical error metrics for BMEmapping objects.
  • plot() Provides graphical visualzations (spatial, prediction and residual plots) of BMEmapping objects.

Getting Help

If you encounter a bug or have structural feature requests, please file a ticket alongside a minimal reproducible example (reprex) on the GitHub Issues page.

Author

Kinspride Duah

License

MIT + file LICENSE

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("BMEmapping")

2.0.0 by Kinspride Duah, 3 months ago


https://github.com/KinsprideDuah/BMEmapping


Report a bug at https://github.com/KinsprideDuah/BMEmapping/issues


Browse source code at https://github.com/cran/BMEmapping


Authors: Kinspride Duah [aut, cre, cph] (ORCID: , Yan Sun [aut]


Documentation:   PDF Manual  


MIT + file LICENSE license


Imports ggplot2, gridExtra, gstat, sf, mvtnorm, stats

Suggests dplyr, knitr, rmarkdown, scales, testthat, tidyr


See at CRAN