rSplineSolver

fun rSplineSolver(problemDefinition: ProblemDefinition, modelBuilder: ModelBuilderIfc, initialNumReps: Int = defaultInitialSampleSize, sampleSizeGrowthRate: Double = defaultReplicationGrowthRate, maxNumReplications: Int = defaultMaxNumReplications, startingPoint: MutableMap<String, Double>? = null, maxIterations: Int = defaultMaxNumberIterations, solutionCache: SolutionCacheIfc = MemorySolutionCache(), simulationRunCache: SimulationRunCacheIfc? = null, printer: (Solver) -> Unit? = null, experimentRunParameters: ExperimentRunParametersIfc? = null, defaultKSLDatabaseObserverOption: Boolean = false): RSplineSolver(source)

Creates and configures an R-SPLINE optimization algorithm for a given problem definition.

Return

An instance of RSplineSolver 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.

initialNumReps

The initial number of replications to use during each evaluation. Defaults to defaultInitialSampleSize.

sampleSizeGrowthRate

The growth rate of the sample size as the solver progresses. Defaults to defaultSampleSizeGrowthRate.

maxNumReplications

The maximum number of replications by growth rate. Defaults to defaultMaxNumReplications.

startingPoint

Optional initial solution to start the optimization. Defaults to the starting point provided by the problem definition.

maxIterations

The maximum number of iterations the algorithm will run. Defaults to 1000.

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).

printer

Optional callback function to print or handle intermediate solutions. Can be used to observe the optimization process.

experimentRunParameters

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

defaultKSLDatabaseObserverOption

indicates if a default KSL database should be created and attached to the model. The default is false.