BITS for GAPS
Bayesian Information-Theoretic Sampling for hierarchical GAussian Process Surrogates.
A framework for information-theoretic sequential experimental design with Bayesian hierarchical Gaussian-process surrogates. Prior physical knowledge is encoded through priors on the GP hyperparameters; sampling is guided by maximizing the predictive differential entropy, so hyperparameter uncertainty (not just predictive variance) drives data acquisition.
Reference: K. D. Jones and A. W. Dowling, "BITS for GAPS: Bayesian Information-Theoretic Sampling for hierarchical GAussian Process Surrogates," Computers & Chemical Engineering 211 (2026) 109650. https://doi.org/10.1016/j.compchemeng.2026.109650
Status: pre-1.0, under active refactor. This repository is being extracted from the paper's research code into a reusable library. See
REFACTOR_PLAN.mdfor the roadmap andHANDOFF.mdfor the current state.
Install (development)
conda env create -f environment.yml
conda activate bits_for_gaps
pip install -e ".[dev]" # core + test tools
# pip install -e ".[dev,vle]" # add the Julia/Clapeyron VLE example backend
The core library is pure Python (GPflow / TensorFlow / NumPy / SciPy) with no Julia
dependency. Julia + Clapeyron are only needed for the vle_distillation example.
macOS note: set export PYTHON_JULIACALL_HANDLE_SIGNALS=yes before importing
juliacall, or Julia crashes with a bus error (SIGBUS).
Layout
src/bits_for_gaps/ the library (algorithm)
examples/ worked examples (incl. the paper's VLE/distillation case study)
paper/ scripts + reference metrics to reproduce the published figures
tests/ unit / integration / regression tests
docs/ Sphinx documentation (ReadTheDocs)
Quick test
pytest -q
Docs
pip install -e ".[docs]"
sphinx-build -W docs docs/_build/html
Full docs (installation, a pure-Python quickstart, theory notes, the VLE example, and
the API reference): docs/index.md, or built and browsed locally as above. See
HANDOFF.md for ReadTheDocs setup status.
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 bits_for_gaps-0.1.0.tar.gz.
File metadata
- Download URL: bits_for_gaps-0.1.0.tar.gz
- Upload date:
- Size: 33.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4325fb0977b80c400cdeb8f654ccc91e52e0697e7f7814b73d4942e8ba20d80e
|
|
| MD5 |
0574aee4516d2e40de08608eae106476
|
|
| BLAKE2b-256 |
4497b2a328379ea5fd57a2d8ec021d20a4e19a204383d6b250f7ae6c0e97f80d
|
Provenance
The following attestation bundles were made for bits_for_gaps-0.1.0.tar.gz:
Publisher:
publish.yml on dowlinglab/bits_for_gaps
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
bits_for_gaps-0.1.0.tar.gz -
Subject digest:
4325fb0977b80c400cdeb8f654ccc91e52e0697e7f7814b73d4942e8ba20d80e - Sigstore transparency entry: 2359407329
- Sigstore integration time:
-
Permalink:
dowlinglab/bits_for_gaps@588fea67a16d8d6b9c0b78c4667b1630f1f685ff -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/dowlinglab
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@588fea67a16d8d6b9c0b78c4667b1630f1f685ff -
Trigger Event:
push
-
Statement type:
File details
Details for the file bits_for_gaps-0.1.0-py3-none-any.whl.
File metadata
- Download URL: bits_for_gaps-0.1.0-py3-none-any.whl
- Upload date:
- Size: 37.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4cfd3a3dfb2453d497f3c9c2621ecaa499632bbeb783e1451065f5752da3d307
|
|
| MD5 |
5f4afc0149150f62863729340a2da799
|
|
| BLAKE2b-256 |
c64e11799a8308154b64aa030449bd58136cd0bd265d1c89baf03a7230844f05
|
Provenance
The following attestation bundles were made for bits_for_gaps-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on dowlinglab/bits_for_gaps
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
bits_for_gaps-0.1.0-py3-none-any.whl -
Subject digest:
4cfd3a3dfb2453d497f3c9c2621ecaa499632bbeb783e1451065f5752da3d307 - Sigstore transparency entry: 2359408049
- Sigstore integration time:
-
Permalink:
dowlinglab/bits_for_gaps@588fea67a16d8d6b9c0b78c4667b1630f1f685ff -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/dowlinglab
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@588fea67a16d8d6b9c0b78c4667b1630f1f685ff -
Trigger Event:
push
-
Statement type: