GeneticAlgorithmSolver

constructor(problemDefinition: ProblemDefinition, evaluator: EvaluatorIfc, streamNum: Int = 0, streamProvider: RNStreamProviderIfc = RNStreamProvider(), populationSize: Int = defaultPopulationSize, selectionOperator: SelectionOperatorIfc = TournamentSelection(), crossoverOperator: CrossoverOperatorIfc = BlendCrossover(), mutationOperator: MutationOperatorIfc = GaussianMutation(problemDefinition), maximumIterations: Int = gaDefaultMaxIterations, replicationsPerEvaluation: ReplicationPerEvaluationIfc, solutionEqualityChecker: SolutionEqualityIfc = InputsAndConfidenceIntervalEquality(), 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

populationSize

the number of individuals per generation

selectionOperator

the parent-selection strategy; defaults to TournamentSelection

crossoverOperator

the recombination strategy; defaults to BlendCrossover

mutationOperator

the mutation strategy; defaults to GaussianMutation

maximumIterations

the maximum number of generations

replicationsPerEvaluation

strategy to determine the number of replications per evaluation

solutionEqualityChecker

used to detect convergence (no-improvement). The default is InputsAndConfidenceIntervalEquality.

name

an optional name for the solver


constructor(problemDefinition: ProblemDefinition, evaluator: EvaluatorIfc, streamNum: Int = 0, streamProvider: RNStreamProviderIfc = RNStreamProvider(), populationSize: Int = defaultPopulationSize, selectionOperator: SelectionOperatorIfc = TournamentSelection(), crossoverOperator: CrossoverOperatorIfc = BlendCrossover(), mutationOperator: MutationOperatorIfc = GaussianMutation(problemDefinition), maximumIterations: Int = gaDefaultMaxIterations, replicationsPerEvaluation: Int = defaultReplicationsPerEvaluation, solutionEqualityChecker: SolutionEqualityIfc = InputsAndConfidenceIntervalEquality(), name: String? = null)(source)

Constructs a genetic algorithm solver using a fixed number of replications per evaluation.

Parameters

replicationsPerEvaluation

the fixed number of replications per evaluation