gemseo_mlearning / algos / opt / core

Hide inherited members

surrogate_based module

A class for surrogate-based optimization.

class gemseo_mlearning.algos.opt.core.surrogate_based.SurrogateBasedOptimizer(problem, acquisition_algorithm, doe_size=0, doe_algorithm='OT_OPT_LHS', doe_options=mappingproxy({}), regression_algorithm='GaussianProcessRegressor', regression_options=mappingproxy({}), acquisition_options=mappingproxy({}))[source]

Bases: object

An optimizer based on surrogate models.

Parameters:
  • acquisition_algorithm (str) – The name of the algorithm to optimize the data acquisition criterion. N.B. this algorithm must handle integers if some of the optimization variables are integers.

  • problem (OptimizationProblem) – The optimization problem.

  • doe_size (int) –

    The size of the initial DOE. Should be 0 if the DOE algorithm does not have a n_samples option.

    By default it is set to 0.

  • doe_algorithm (str) –

    The name of the algorithm for the initial sampling.

    By default it is set to “OT_OPT_LHS”.

  • doe_options (Mapping[str, DOELibraryOptionType]) –

    The options of the algorithm for the initial sampling.

    By default it is set to {}.

  • regression_algorithm (str) –

    The name of the regression algorithm for the objective function.

    By default it is set to “GaussianProcessRegressor”.

  • regression_options (Mapping[str, MLAlgoParameterType]) –

    The options of the regression algorithm for the objective function.

    By default it is set to {}.

  • acquisition_options (Mapping[str, OptimizationLibraryOptionType]) –

    The options of the algorithm to optimize the data acquisition criterion.

    By default it is set to {}.

execute(number_of_acquisitions)[source]

Execute the surrogate-based optimization.

Parameters:

number_of_acquisitions (int) – The number of learning points to be acquired.

Returns:

The termination message.

Return type:

str