Dependencies#

Optimas relies on the following packages:

  • jinja2 - Needed to generate simulation scripts from templates.

  • libEnsemble - The backbone of optimas, orchestrates the concurrent evaluation of simulations, the resource detection and allocation, and the communication between simulations and manager.

  • mpi4py - Python bindings for MPI. Required for launching parallel simulations.

  • pandas - Enable output as pandas DataFrames.

  • pydantic - Input validation and object serialization.

  • (optional) Ax - Algorithms for Bayesian optimization.

The installed dependencies will determine which generators are available for use. See table below for a summary.

Available generators and their dependencies#

Generator

pip install optimas

pip install 'optimas[all]'

LineSamplingGenerator

\(\checkmark\)

\(\checkmark\)

GridSamplingGenerator

\(\checkmark\)

\(\checkmark\)

RandomSamplingGenerator

\(\checkmark\)

\(\checkmark\)

AxSingleFidelityGenerator

\(\times\)

\(\checkmark\)

AxMultiFidelityGenerator

\(\times\)

\(\checkmark\)

AxMultitaskGenerator

\(\times\)

\(\checkmark\)

AxClientGenerator

\(\times\)

\(\checkmark\)