createRandomRestartStochasticHillClimberSolver

fun createRandomRestartStochasticHillClimberSolver(problemDefinition: ProblemDefinition, modelBuilder: ModelBuilderIfc, maxNumRestarts: Int = defaultMaxRestarts, startingPoint: MutableMap<String, Double>? = null, maxIterations: Int = StochasticHillClimber.shcDefaultMaxIterations, replicationsPerEvaluation: Int = defaultReplicationsPerEvaluation, solutionCache: SolutionCacheIfc = MemorySolutionCache(), simulationRunCache: SimulationRunCacheIfc? = null, experimentRunParameters: ExperimentRunParametersIfc? = null, streamNum: Int = 0, streamProvider: RNStreamProviderIfc = RNStreamProvider(), name: String? = null, parallelOptions: ParallelEvaluationOptions = ParallelEvaluationOptions(), concurrentRestarts: Int = 1, concurrentOptions: ConcurrentRunOptions = ConcurrentRunOptions()): RandomRestartSolver(source)

Creates and configures a simulated annealing optimization algorithm for a given problem definition.

Return

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

maxNumRestarts

The maximum number of restarts to be performed.

startingPoint

An optional starting point. If provided, the FIRST run of the solver will begin here. All subsequent restarts will begin at purely random, auto-generated coordinates

maxIterations

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

replicationsPerEvaluation

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

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 for the outer random-restart driver; 0 (the default) means the next available stream

streamProvider

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

parallelOptions

selects and configures parallel evaluation of multi-point requests; mutually exclusive with concurrentRestarts greater than 1

concurrentRestarts

the number of restarts allowed to run at the same time, each on its own worker with private evaluation resources; 1 (the default) preserves the sequential behavior

concurrentOptions

stream-block size and optional confirmation stage for concurrent restarts