UM-Bridge documentation¶
UM-Bridge is a universal interface that makes any numerical model accessible from any programming language or higher-level software, with a main focus on uncertainty quantification (UQ). It accelerates development from method research to applications and from prototype to supercomputer, enabling you to:
seamlessly link numerical models to UQ across languages and frameworks,
break down complexity of advanced applications into manageable components,
share your containerized models with collaborators,
benchmark your algorithms on a community-driven benchmark library, and
scale your applications from laptop to supercomputer or cloud with minimal effort.
UM-Bridge only assumes that a model returns an output vector for a given input, and possibly offers derivatives and configuration options. That makes UM-Bridge suitable for fields like UQ, optimization or machine learning.
Try out this Python example! It passes an input to a simple 1D test model running on a remote server and prints the model’s output.
import umbridge
model = umbridge.HTTPModel("http://testmodel.linusseelinger.de", "forward")
print(model([[100.0]]))
Interested? Continue with quickstart or tutorial for a guided tour. See clients for how to interact with a model from any supported language or UQ package, and models for how to add UM-Bridge support to your own model code.
In addition, UM-Bridge comes with a community-driven library of UQ benchmark problems, which you find listed on the left.
We’d like to hear about your application, so join our slack channel!
Supported languages and frameworks¶
Language |
Client (UQ) |
Server (model) |
---|---|---|
C++ |
✓ |
✓ |
MATLAB |
✓ |
✗ |
Python |
✓ |
✓ |
R |
✓ |
✗ |
Julia |
✓ |
✓ |
Framework |
Client (UQ) |
Server (model) |
---|---|---|
CUQIpy |
✓ |
✓ |
emcee |
✓ |
✗ |
MUQ |
✓ |
✓ |
PyApprox |
✓ |
✗ |
PyMC |
✓ |
✗ |
QMCPy |
✓ |
✗ |
Sparse Grids MATLAB Kit |
✓ |
✗ |
tinyDA |
✓ |
✗ |
TT Toolbox |
✓ |
✗ |
UQPy |
✓ |
✗ |
We are happy to actively support the development of new integrations!
Opinions¶
Citing UM-Bridge¶
When using UM-Bridge in scientific publications, please cite:
Seelinger et al., (2023). UM-Bridge: Uncertainty quantification and modeling bridge. Journal of Open Source Software, 8(83), 4748, url.
@article{UMBridge, doi = {10.21105/joss.04748}, url = {https://doi.org/10.21105/joss.04748}, year = {2023}, publisher = {The Open Journal}, volume = {8}, number = {83}, pages = {4748}, author = {Linus Seelinger and Vivian Cheng-Seelinger and Andrew Davis and Matthew Parno and Anne Reinarz}, title = {UM-Bridge: Uncertainty quantification and modeling bridge}, journal = {Journal of Open Source Software} }
Seelinger et al., (2024). Democratizing Uncertainty Quantification. Arxiv preprint, url.
@misc{DemocratizingUQ, title={Democratizing Uncertainty Quantification}, author={Linus Seelinger and Anne Reinarz and Mikkel B. Lykkegaard and Amal M. A. Alghamdi and David Aristoff and Wolfgang Bangerth and Jean Bénézech and Matteo Diez and Kurt Frey and John D. Jakeman and Jakob S. Jørgensen and Ki-Tae Kim and Massimiliano Martinelli and Matthew Parno and Riccardo Pellegrini and Noemi Petra and Nicolai A. B. Riis and Katherine Rosenfeld and Andrea Serani and Lorenzo Tamellini and Umberto Villa and Tim J. Dodwell and Robert Scheichl}, year={2024}, eprint={2402.13768}, archivePrefix={arXiv} }
Resources¶
This repository hosts stand-alone reference problems for benchmarking of UQ algorithms.
The documentation for the project and for the benchmark problems within is at: Documentation.
The project source code is hosted on GitHub.
Getting started¶
Propagation Benchmarks¶
Inference Benchmarks¶
- L2-Sea hull optimization
- Agent based disease transmission benchmark
- Inferring coefficient field in two-dimensional Poisson PDE
- Heat1D: 1D heat Bayesian inverse problem using CUQIpy
- Tsunami source inference
- Analytic Gaussian Mixture
- Analytic Banana
- Computed Tomography using CUQIpy
- Deconvolution1D
- Analytic Funnel
- Boundary condition inversion in a three-dimensional 𝑝-Poisson nonlinear PDE
- Analytic Donut
- Inferring material properties of a cantilevered beam
- Tritium Diffusion Posterior