Gaussian Process accelerated optimization for computational chemistry. ChemGP provides GP surrogate models for energy surface exploration, reducing expensive oracle (electronic structure) evaluations by 3-22x.
Paper: R. Goswami, "Bayesian Optimization with Gaussian Processes to Accelerate Stationary Point Searches," arXiv:2603.10992, Mar. 2026. doi:10.48550/arXiv.2603.10992
Two kernel types are provided: MolInvDistSE for molecular systems
(operates on inverse interatomic distances, providing rotational and
translational invariance) and CartesianSE for arbitrary smooth
surfaces (operates directly on coordinates).
- Minimization: GP-guided local optimization with FPS subset selection, EMD trust regions, and LCB exploration
- Dimer: GP-accelerated saddle point search with L-BFGS translation
- NEB: All-image (AIE) and one-image (OIE) evaluation with per-bead FPS and RFF approximation
- OTGPD: Adaptive threshold GP dimer with HOD training data management
All methods share four mechanisms: FPS subset selection, EMD/Euclidean
trust regions, RFF approximation for scalable prediction, and
method-adapted LCB exploration. The PredModel enum dispatches between
exact GP and RFF uniformly across all optimizers.
| Surface | Method | Oracle calls | Speedup |
|---|---|---|---|
| Muller-Brown | GP minimize | 7 | 4.9x vs direct GD |
| LEPS | GP minimize | 9 | 22x vs direct GD |
| LEPS | GP-Dimer | 13 | 3.5x vs standard |
| LEPS | OTGPD | 13 | 3.5x vs standard |
| LEPS | GP-NEB AIE | 62 | 2x vs standard |
| LEPS | GP-NEB OIE | 49 | 2.6x vs standard |
cargo build --release
cargo test -p chemgp-core# 2D analytical surface (CartesianSE kernel)
cargo run --release --example mb_minimize
# Collinear H + H2 reaction (MolInvDistSE kernel)
cargo run --release --example leps_minimize
cargo run --release --example leps_dimer
cargo run --release --example leps_nebEach writes a .jsonl file with per-step convergence data.
All manuscript figures are generated via a Snakemake pipeline in
scripts/figures/. See scripts/figures/README.org
for the full workflow.
The repository now includes a dedicated benchmark subproject under
benchmarks/ for minimization, dimer, and NEB comparisons. The top-level
development entrypoints are:
pixi run -e dev bench-smoke
pixi run -e dev bench-minimize
pixi run -e dev bench-dimer
pixi run -e dev bench-neb
pixi run -e dev bench-allThe compact production slice is designed to stay useful within roughly
45 minutes on rg.cosmolab.
A rehydration archive is deposited on Materials Cloud Archive for exact reproduction without recomputation.
pixi run -e docs docbldOr visit chemgp.rgoswami.me.
MIT License. See LICENSE for details.