Skip to main content

GPGO - Gaussian Process GO

My own implementation of a Bayesian Black box Optimization with Gaussian Process as a surrogate model. It is still in development but it was successfully used to achieve a bottom up optimization of the Dissipative Particle Dynamics force field for a complex system of polymers chains functionalized gold nanoparticles in a water solvent.

Hyperparameters

The Hyperparameters of the GP are optimized by the common technique of maximizing the Log Marginal Likelihood. In this repository this is achieved by using a search grid (although not in an efficient way) or by using the scipy optimizer module (L-BFGS-B, TNC, SLSCP). The analytical gradient is implemented for the Radial Basis Function kernel and it is possible to use the derivate of the Log Marginal Likelihood to optimize the hyperparameters.

Figure-6

Acquisition function

As it is there are two different acquisition function implemented right now:

-Expected Improvement (EI)

-UCB (Upper Confidence Bound)

Maximizing the Acquisition function

In this little package right now there are 3 ways to run an optimization task with Gaussian Processes:

-NAIVE : AkA sampling the acquisition function with a grid of some kind or a quasi random methods as LHS (require smt package)

-BFGS : optimize the Acquisition function by using the L-BFGS-B optimizer

-DIRECT : optimize the Acquisition function by using the DIRECT optimizer (require DIRECT python package)

-PSO : optimize the Acquisition function by a Particle Swarm Optimization genetic algorithm

Figure-7

Made for experiments

Easy to use it with a shell procedure! Load the data and just .suggest_location() to get the next points of your experiment!

Multi Objective

Right now the package contains an implementation of the NSGAII genetic solver that allows to solve multi objective problems. It has also an early version of a Multi Objective Bayesian optimization that uses the NSGAII and optimize the Acquisition function EI or the mean function of the GP. It will follow a more precise implementation of the Hypervolume improvement.

pareto

TODO

-Load data routines

-Good code practice maybe

-Easy routines for LAMMPS (at least DPD and BD)

Metadata

Release files for BayGPGO 0.3.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for BayGPGO 0.3.2
File Size Uploaded Provenance
BayGPGO-0.3.2.tar.gz 30.9 kB Without provenance Details

Release files / BayGPGO-0.3.2.tar.gz

Download URL BayGPGO-0.3.2.tar.gz
Size 30.9 kB
Tags Source
SHA-256 checksum
How to use checksums
d1bea558896482f6770ae0bb6293e3f36b371e13e5e0eed57454c5c3422b7d0f
BLAKE2b-256 checksum
How to use checksums
00b863a4fa07aa8db0099d18fac558dbcdd94a052afd66b8b3f8fee42c920fa7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0.post20200210 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.6

Security for BayGPGO 0.3.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.3.2 This release

1 release file No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page