Optimize step
An optimize step generates optimized configurations according to the defined optimization strategy. During this step, Akamas AI is used to generate such optimized configurations.
The optimize step has the following structure:
type
string
optimize
yes
The type of the step, in this case, optimize
name
string
yes
The name of the step
runOnFailure
boolean
true
false
no
false
The execution policy of the step:
false
prevents the step from running in case the previous step failedtrue
allows the step to run even if the previous step failed
numberOfExperiments
integer
numberOfExperiments
> 0 and
numberOfExperiments
>= numberOfInitExperiments
yes
The number of experiments to execute - see below
numberOfTrials
integer
numberOfTrials
> 0
no
1
The number of trials to execute for each experiment
numberOfInitExperiments
integer
numberOfInitExperiments
< numberOfExperiments
no
10
The number of initialization experiment to execute - see below.
maxFailedExperiments
integer
maxFailedExperiments
> 1
no
30
The number of experiment failures (as either workflow errors or constraint violations) to accept before the step is marked as failed
optimizer
string
AKAMAS
SOBOL
RANDOM
no
AKAMAS
The type of optimizer to use to generate the configuration of the experiments - see below
Optimizer
The optimizer
field allows selecting the desired optimizer:
AKAMAS
identifies the standard AI optimizer used by AkamasSOBOL
identifies an optimizer that generates configurations using Sobol sequencesRANDOM
identifies an optimization that generates configurations using random numbers
Notice that SOBOL and RANDOM optimizers do not perform initialization experiments, hence the field numberOfInitExperiments
is ignored.
Refer to page Optimizer Options for more configuration options for the optimizer
Failures
The optimize step is fault-tolerant and tries to relaunch experiments on failure. Nevertheless, the step imposes a limit on the number of failed experiments: if too many experiments fail, then the entire step fails too. By default, at most 30 experiments can fail while Akamas is optimizing systems. An experiment is considered failed when it either failed to run (i.e., there is an error in the workflow) or violated some constraint.
Initializations
The optimize step launches some initialization experiments (by default 10) that do not apply the AI optimizer and are used to find good configurations. By default, the step performs 10 initialization experiments.
Initialization experiments take into account bootstrapped experiments, experiments executed in preset steps, and baseline experiments.
Example
The following snippet shows an optimization step that runs 50 experiments using the SOBOL optimizer:
Last updated