Wasserstein global gradient-free optimisation methods library.
Project description
Welcome to WAGGON: WAssrestein Global Gradient-free Optimisation
WAGGON
is a python library of black box gradient-free optimisation. Currently, the library contains implementations of optimisation methods based on Wasserstein uncertainty and baseline approaches from the following papers:
- Tigran Ramazyan, Mikhail Hushchyn and Denis Derkach. "Global Optimisation of Black-Box Functions with Generative Models in the Wasserstein Space." Arxiv abs/2407.1117 (2024). [arxiv]
Implemented methods
- Wasserstein Uncertainty Global Optimisation (WU-GO)
- Bayesian optimisation: via Expected Improvement (EI), Lower and Upper Confidence Bounds (LCB, UCB)
Installation
pip install waggon
or
git clone https://github.com/hse-cs/waggon
cd waggon
pip install -e
Basic usage
(See more examples in the documentation.)
The following code snippet (does this and that)
import waggon
from waggon.acquisition import WU
from waggon.optim import Optimiser
from waggon.surrogates.gan import WGAN_GP as GAN
from waggon.test_functions import three_hump_camel
# initialise the function to be optimised
func = three_hump_camel()
# initialise the surrogate to carry out optimisation
surr = GAN()
# initialise optimisation acquisition function
acqf = WU()
# initialise optimiser
opt = Optimiser(func=func, surr=surr, acqf=acqf)
# run optimisation
opt.optimise()
# visualise
waggon.display()
Support
- For any usage questions, suggestions and bugs please use the issue page.
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
waggon-0.0.3.tar.gz
(12.1 kB
view details)
Built Distribution
waggon-0.0.3-py3-none-any.whl
(13.0 kB
view details)
File details
Details for the file waggon-0.0.3.tar.gz
.
File metadata
- Download URL: waggon-0.0.3.tar.gz
- Upload date:
- Size: 12.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5ec92cd90cfef82f7f69e20255fd1c8d8d934220bb5b19f5a72d3f67c807268d |
|
MD5 | fb6252ef255ceb5e12052de3667ab14c |
|
BLAKE2b-256 | 8ac1aa5d28e7192bcff91e0e54456c94916c78a6b9749b0466aae78b7d54f0a8 |
File details
Details for the file waggon-0.0.3-py3-none-any.whl
.
File metadata
- Download URL: waggon-0.0.3-py3-none-any.whl
- Upload date:
- Size: 13.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1c95594297eec39e961fb38c7a26193c6f46b5513d0856e35a0ee6c25eafce2a |
|
MD5 | cd4c1b5e6f1d213ecae45b812d3703e3 |
|
BLAKE2b-256 | ad18c659c92fa3fa359b679114d8b9fa9fe591dc4fcb2a9e0d4903b5c25a98ea |