Quadrature / Numerical Integration of Functions.

This package implements Bayesian quadrature rules used for numerical integration of functions on a given domain. Such methods integrate a function by iteratively building a probabilistic model and adaptively choosing points to evaluate the integrand based on said model.


bayesquad(fun, input_dim[, kernel, domain, ...])

Infer the solution of the uni- or multivariate integral \(\int_\Omega f(x) d \mu(x)\) on a hyper-rectangle \(\Omega = [a_1, b_1] \times \cdots \times [a_D, b_D]\).

bayesquad_from_data(nodes, fun_evals[, ...])

Infer the value of an integral from a given set of nodes and function evaluations.


BayesianQuadrature(kernel, measure, policy, ...)

A base class for Bayesian quadrature.

IntegrationMeasure(domain, input_dim)

An abstract class for a measure against which a target function is integrated.

KernelEmbedding(kernel, measure)

Integrals over kernels against integration measures.

GaussianMeasure(mean, cov[, input_dim])

Gaussian measure on Euclidean space with given mean and covariance.

LebesgueMeasure(domain[, input_dim, normalized])

Lebesgue measure on a hyper-rectangle.


Stopping criterion of a Bayesian quadrature method.


Stop once the integral variance is below some tolerance.


Stop once a maximum number of integrand evaluations is reached.


Stop once the relative change of consecutive integral estimates are smaller than a tolerance.

Class Inheritance Diagram

Inheritance diagram of probnum.quad.BayesianQuadrature, probnum.quad.IntegrationMeasure, probnum.quad.KernelEmbedding, probnum.quad.GaussianMeasure, probnum.quad.LebesgueMeasure, probnum.quad.BQStoppingCriterion, probnum.quad.solvers.stopping_criteria.IntegralVarianceTolerance, probnum.quad.solvers.stopping_criteria.MaxNevals, probnum.quad.solvers.stopping_criteria.RelativeMeanChange