Multi-fidelity surrogate models (NN ensembles and co-kriging) compatible with BoTorch.
Project description
mfbo
"mfbo" is a Python library for "multi-fidelity surrogate modeling and Bayesian optimization". It provides neural-network ensemble surrogates and Gaussian-process co-kriging models that are fully compatible with "BoTorch". The library is designed for scientific and engineering optimization problems.
mfbo is a Python library for multi-fidelity surrogate modeling and Bayesian optimization. It provides neural-network ensemble surrogates and Gaussian-process co-kriging models that are fully compatible with BoTorch.
The library is designed for scientific and engineering optimization problems where high-fidelity evaluations are expensive and multiple fidelity levels are available.
Reference
This library implements methods described in:
Passakorn Paladaechanan et al.
Adaptive Gated Multi-Fidelity Neural Networks for Bayesian Optimization
Ocean Engineering, 2025
https://www.sciencedirect.com/science/article/pii/S002980182502997X
If you use this library in academic work, please cite the above paper.
Features
- Multi-fidelity neural surrogate ensembles
MLPEnsembleMFNNEnsembleAGMFNetEnsembleAda2MFEnsemble
- Gaussian-process surrogate models
- Kriging
- AR(1) Co-Kriging (Kennedy–O’Hagan model)
- Native BoTorch compatibility
- All models expose a
posterior()method
- All models expose a
- Supports multi-output objectives
- Designed for Bayesian optimization workflows
Dependencies
mfbo is built on the PyTorch Bayesian optimization ecosystem:
- PyTorch ≥ 2.5
- GPyTorch ≥ 1.15
- BoTorch ≥ 0.16
- tqdm ≥ 4.67
Please install PyTorch separately according to your system
(CPU or CUDA) before installing mfbo.
Installation
1. Install PyTorch
Install PyTorch first (CPU or CUDA version depending on your system):
https://pytorch.org/get-started/locally/
2. Install mfbo
pip (PyPI)
pip install mfbo
conda (conda-forge)
conda install -c conda-forge mfbo
Contact
For questions related to the implementation or the associated research,
please contact:
Passakorn Paladaechanan
Email: p.paladaechanan@gmail.com
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mfbo-0.1.2.tar.gz.
File metadata
- Download URL: mfbo-0.1.2.tar.gz
- Upload date:
- Size: 26.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ddbf1064b21dff15252b591f537e9b6c4271c4b30f55a221fd43646a16f27086
|
|
| MD5 |
58b5873bae372cb474b3334a577aa0a2
|
|
| BLAKE2b-256 |
85c1a485dc470ad4d8e43471f57689d3f2470834720b55e1344f1c333a09d956
|
File details
Details for the file mfbo-0.1.2-py3-none-any.whl.
File metadata
- Download URL: mfbo-0.1.2-py3-none-any.whl
- Upload date:
- Size: 38.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1899bd13992adbf0ceb2b6c85192981a0d5938cb8a80ea6b762eb997fe88225c
|
|
| MD5 |
06b2a98a8519ccc06d6a6601e8df401f
|
|
| BLAKE2b-256 |
b65f929cee027a47654956f598019e6282b8532c8870381999eccade9e20f155
|