public RosenbrockOptimizer(IObjectiveEvaluator <T> evaluator, T startingPoint, ITerminationCondition <T> terminationCondition, double alpha = 1.4, double beta = 0.7, IAlgebraProvider algebraprovider = null, IDictionary <string, string> logTags = null) { this.countingEvaluator = new CountingEvaluator(evaluator); this.startingPoint = evaluator.EvaluateScore(startingPoint); this.terminationCondition = terminationCondition; terminationCondition.SetEvolutionEngine(this); this.alpha = alpha; this.beta = beta; this.AlgebraProvider = algebraprovider; this.logTags = logTags; }
public Stage(IBase b, IObjectiveScores <T> startingPoint, IVector stepsLength, double alpha, double beta, CountingEvaluator countingEvaluator, IAlgebraProvider algebraProvider, ITerminationCondition <T> terminationCondition, IDictionary <string, string> logTags = null) { this.b = b; this.startingPoint = startingPoint; this.currentPoint = startingPoint; this.stepsLength = stepsLength; this.alpha = alpha; this.beta = beta; this.countingEvaluator = countingEvaluator; this.terminationCondition = terminationCondition; this.algebraProvider = algebraProvider; this.logTags = logTags; }