Skip to main content

Simple framework for optimization functions and metamodels

Project description

Optilab

License: GPL v3 Docker Pulls Read the Docs

Optilab is a lightweight and flexible python framework for testing black-box optimization.

Features

  • ✅ Intuitive interface to quickly prototype and run optimizers and metamodels.
  • 📚 High quality documentation.
  • 📈 Objective functions, optimizers, plotting and data handling.
  • ⋙ CLI functionality to easily summarize results of previous experiments.
  • 🚀 Multiprocessing for faster computation.

How to install

Optilab has been tested to work on python versions 3.11 and above. To install it from PyPI, run:

pip install optilab

You can also install from source by cloning this repo and running:

make install

Try the demos

Learn how to use optilab by using our demo notebook. See demo/tutorial.ipynb.

CLI tool

Optilab comes with a powerful CLI tool to easily summarize your experiments. It allows for plotting the results and performing statistical testing to check for statistical significance in optimization results.

usage: python -m optilab [-h] [--hide_plots] [--test_y] [--test_evals] [--entries ENTRIES [ENTRIES ...]] [--raw_values] [--hide_outliers] pickle_path

Optilab CLI utility.

positional arguments:
  pickle_path           Path to pickle file or directory with optimization runs.

options:
  -h, --help            show this help message and exit
  --hide_plots          Hide plots when running the script.
  --test_y              Perform Mann-Whitney U test on y values.
  --test_evals          Perform Mann-Whitney U test on eval values.
  --entries ENTRIES [ENTRIES ...]
                        Space separated list of indexes of entries to include in analysis.
  --raw_values          If specified, y values below tolerance are not substituted by tolerance value.
  --hide_outliers       If specified, outliers will not be shown in the box plot.

Docker

This project comes with a docker container. You can pull it from dockerhub:

docker pull mlojek/optilab

Or build it yourself:

make docker

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

optilab-21-py3-none-any.whl (49.1 kB view details)

Uploaded Python 3

File details

Details for the file optilab-21-py3-none-any.whl.

File metadata

  • Download URL: optilab-21-py3-none-any.whl
  • Upload date:
  • Size: 49.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for optilab-21-py3-none-any.whl
Algorithm Hash digest
SHA256 8e3e1ea3d47d7546dc1e892e7290663331d9e9ad0bda20378166856ea85fd3dd
MD5 71631ab7577b452474aaabb59a0cc788
BLAKE2b-256 949196241fc45d33b07a734d19b6a3246ed4268d46f1d85e49f9d1f6061a2661

See more details on using hashes here.

Provenance

The following attestation bundles were made for optilab-21-py3-none-any.whl:

Publisher: pypi.yml on mlojek/optilab

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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