persistent_ax_multitask

Required: ax-platform>=0.5.0

Example usage: gp_multitask_ax

To install:

pip install ax-platform

An example of the Ax multitask GP.

This file defines the gen_f for Bayesian optimization with a Gaussian process and the multi-task algorithm of Ax.

The gen_f is called once by a dedicated worker and only returns at the end of the whole libEnsemble run.

This gen_f is meant to be used with the alloc_f function only_persistent_gens

Requires: Ax>=0.5.0

Ax notes: Each arm = a set of simulation inputs (a sim_id) Each trial = a batch of simulations. The metric = the recorded simulation output (f) that Ax optimizes. Ax runner handles the execution of trials - AxRunner wraps Runner to use libE tr.run()

persistent_ax_multitask.persistent_gp_mt_ax_gen_f(H, persis_info, gen_specs, libE_info)

Create a Gaussian Process model for multi-task optimization and update it as new simulation results are available, and generate inputs for the next simulations.

This is a persistent genf i.e. this function is called by a dedicated worker and does not return until the end of the whole libEnsemble run.