BayesianOptimizationSolver

constructor(problemDefinition: ProblemDefinition, evaluator: EvaluatorIfc, streamNum: Int = 0, streamProvider: RNStreamProviderIfc = RNStreamProvider(), surrogate: SurrogateModelIfc = GaussianProcessModel(problemDefinition), acquisition: AcquisitionFunctionIfc = ExpectedImprovement(), acquisitionOptimizer: AcquisitionOptimizerIfc = SampledAcquisitionOptimizer(), hyperparameterFitter: HyperparameterFitterIfc = FixedHyperparameters(), initialDesign: InitialDesignIfc = LatinHyperCubeDesign(), incumbentRule: IncumbentRuleIfc = BestPosteriorMeanIncumbent(), initialDesignSize: Int = defaultInitialDesignSize, maximumIterations: Int = boDefaultMaxIterations, replicationsPerEvaluation: ReplicationPerEvaluationIfc, name: String? = null)(source)

Parameters

problemDefinition

the problem being solved

evaluator

the evaluator responsible for assessing the quality of solutions

streamNum

the random number stream number; 0 (the default) means the next available stream

streamProvider

the provider of random number streams; defaults to a fresh RNStreamProvider

surrogate

the surrogate model; defaults to a GaussianProcessModel

acquisition

the acquisition function; defaults to ExpectedImprovement

acquisitionOptimizer

the acquisition optimizer; defaults to SampledAcquisitionOptimizer

hyperparameterFitter

the surrogate hyperparameter fitter; defaults to FixedHyperparameters

initialDesign

the initial design strategy; defaults to LatinHyperCubeDesign

incumbentRule

the incumbent rule; defaults to BestPosteriorMeanIncumbent

initialDesignSize

the number of initial design points

maximumIterations

the maximum number of BO iterations (after the initial design)

replicationsPerEvaluation

strategy to determine the number of replications per evaluation

name

an optional name for the solver


constructor(problemDefinition: ProblemDefinition, evaluator: EvaluatorIfc, streamNum: Int = 0, streamProvider: RNStreamProviderIfc = RNStreamProvider(), surrogate: SurrogateModelIfc = GaussianProcessModel(problemDefinition), acquisition: AcquisitionFunctionIfc = ExpectedImprovement(), acquisitionOptimizer: AcquisitionOptimizerIfc = SampledAcquisitionOptimizer(), hyperparameterFitter: HyperparameterFitterIfc = FixedHyperparameters(), initialDesign: InitialDesignIfc = LatinHyperCubeDesign(), incumbentRule: IncumbentRuleIfc = BestPosteriorMeanIncumbent(), initialDesignSize: Int = defaultInitialDesignSize, maximumIterations: Int = boDefaultMaxIterations, replicationsPerEvaluation: Int = defaultReplicationsPerEvaluation, name: String? = null)(source)

Constructs a Bayesian optimization solver using a fixed number of replications per evaluation.

Parameters

replicationsPerEvaluation

the fixed number of replications per evaluation