Skip to main content

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


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)

Uploaded Source

Built Distribution

waggon-0.0.3-py3-none-any.whl (13.0 kB view details)

Uploaded Python 3

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

Hashes for waggon-0.0.3.tar.gz
Algorithm Hash digest
SHA256 5ec92cd90cfef82f7f69e20255fd1c8d8d934220bb5b19f5a72d3f67c807268d
MD5 fb6252ef255ceb5e12052de3667ab14c
BLAKE2b-256 8ac1aa5d28e7192bcff91e0e54456c94916c78a6b9749b0466aae78b7d54f0a8

See more details on using hashes here.

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

Hashes for waggon-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1c95594297eec39e961fb38c7a26193c6f46b5513d0856e35a0ee6c25eafce2a
MD5 cd4c1b5e6f1d213ecae45b812d3703e3
BLAKE2b-256 ad18c659c92fa3fa359b679114d8b9fa9fe591dc4fcb2a9e0d4903b5c25a98ea

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page