Companion

Properties

Link copied to clipboard

Represents the default maximum number of iterations to be executed in a given process or algorithm. This value acts as a safeguard to prevent indefinite looping or excessive computation.

Link copied to clipboard

Represents the default number of replications to be performed during an evaluation.

Link copied to clipboard

Many algorithms compare solutions. This factor serves as the default precision between two solutions such that if the solutions are within this value they are considered equal. The default is 0.01

Link copied to clipboard
val logger: KLogger

Logger instance used for logging messages. Utilizes the KotlinLogging framework to facilitate structured and leveled logging.

Functions

Link copied to clipboard
fun crossEntropySolver(problemDefinition: ProblemDefinition, modelBuilder: ModelBuilderIfc, ceSampler: CESamplerIfc = CENormalSampler(problemDefinition), startingPoint: MutableMap<String, Double>? = null, maxIterations: Int = defaultMaxNumberIterations, replicationsPerEvaluation: Int = defaultReplicationsPerEvaluation, printer: (Solver) -> Unit? = null): CrossEntropySolver

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

Link copied to clipboard
fun simulatedAnnealingSolver(problemDefinition: ProblemDefinition, modelBuilder: ModelBuilderIfc, startingPoint: MutableMap<String, Double>? = null, initialTemperature: Double = defaultInitialTemperature, maxIterations: Int = defaultMaxNumberIterations, replicationsPerEvaluation: Int = defaultReplicationsPerEvaluation, printer: (Solver) -> Unit? = null): SimulatedAnnealing

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

Link copied to clipboard
fun stochasticHillClimbingSolver(problemDefinition: ProblemDefinition, modelBuilder: ModelBuilderIfc, startingPoint: MutableMap<String, Double>? = null, maxIterations: Int = defaultMaxNumberIterations, replicationsPerEvaluation: Int = defaultReplicationsPerEvaluation, printer: (Solver) -> Unit? = null): StochasticHillClimber

Creates and configures a stochastic hill climber to solve the given problem definition using a simulation-based evaluation approach. The default configuration has the evaluator configured to use a solution cache.