createBayesianOptimizationSolver

fun createBayesianOptimizationSolver(problemDefinition: ProblemDefinition, modelBuilder: ModelBuilderIfc, initialDesignSize: Int = BayesianOptimizationSolver.defaultInitialDesignSize, acquisition: AcquisitionFunctionIfc = ExpectedImprovement(), startingPoint: MutableMap<String, Double>? = null, maxIterations: Int = BayesianOptimizationSolver.boDefaultMaxIterations, replicationsPerEvaluation: Int = defaultReplicationsPerEvaluation, solutionCache: SolutionCacheIfc = MemorySolutionCache(), simulationRunCache: SimulationRunCacheIfc? = null, experimentRunParameters: ExperimentRunParametersIfc? = null, streamNum: Int = 0, streamProvider: RNStreamProviderIfc = RNStreamProvider(), name: String? = null, parallelOptions: ParallelEvaluationOptions = ParallelEvaluationOptions()): BayesianOptimizationSolver(source)

Creates and configures a Bayesian optimization (BO) solver for a given problem definition.

BO is sequential: each iteration evaluates a single point, so parallelOptions defaults to sequential evaluation (as with most factories). Enabling parallel evaluation only benefits the initial design batch; if you do, the supplied modelBuilder must yield an independent model per call.

Return

An instance of BayesianOptimizationSolver that encapsulates the optimization process and results.

Parameters

problemDefinition

The definition of the optimization problem, including constraints and objectives.

modelBuilder

The model builder interface used to create models for evaluation.

initialDesignSize

The number of initial design points. Defaults to BayesianOptimizationSolver.defaultInitialDesignSize.

acquisition

The acquisition function. Defaults to ExpectedImprovement.

startingPoint

Optional initial coordinates seeded into the initial design. If left null, the initial design is generated entirely by the design strategy.

maxIterations

The maximum number of BO iterations (after the initial design). Defaults to 100.

replicationsPerEvaluation

The number of replications to use during each evaluation to reduce stochastic noise.

solutionCache

Specifies if the evaluator uses a solution cache. By default, this is MemorySolutionCache.

simulationRunCache

Specifies if the simulation oracle will use a SimulationRunCache. The default is null (no cache).

experimentRunParameters

the run parameters to apply to the model during the building process

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, so each solver has its own streams