protected override double Evaluate(double quality, RealVector point, AdditiveMove move) { RealVectorAdditiveMoveWrapper wrapper = new RealVectorAdditiveMoveWrapper(move, point); var eval = EvaluatorParameter.ActualValue as MultinormalEvaluator; if (eval != null) return eval.Evaluate(wrapper); throw new InvalidOperationException("evaluator is not a multinormal evaluator"); }
private RealVectorAdditiveMoveWrapper(RealVectorAdditiveMoveWrapper original, Cloner cloner) : base(original, cloner) { this.dimension = original.dimension; this.moveDistance = original.moveDistance; this.vector = cloner.Clone(vector); }
protected override double Evaluate(double quality, RealVector point, AdditiveMove move) { RealVectorAdditiveMoveWrapper wrapper = new RealVectorAdditiveMoveWrapper(move, point); var eval = EvaluatorParameter.ActualValue as MultinormalEvaluator; if (eval != null) { return(eval.Evaluate(wrapper)); } throw new InvalidOperationException("evaluator is not a multinormal evaluator"); }
protected override double Evaluate(double quality, RealVector point, AdditiveMove move) { RealVectorAdditiveMoveWrapper wrapper = new RealVectorAdditiveMoveWrapper(move, point); return(BealeEvaluator.Apply(wrapper)); }
protected override double Evaluate(double quality, RealVector point, AdditiveMove move) { RealVectorAdditiveMoveWrapper wrapper = new RealVectorAdditiveMoveWrapper(move, point); return RastriginEvaluator.Apply(wrapper, A.Value); }
protected override double Evaluate(double quality, RealVector point, AdditiveMove move) { RealVectorAdditiveMoveWrapper wrapper = new RealVectorAdditiveMoveWrapper(move, point); return BoothEvaluator.Apply(wrapper); }
protected override double Evaluate(double quality, RealVector point, AdditiveMove move) { RealVectorAdditiveMoveWrapper wrapper = new RealVectorAdditiveMoveWrapper(move, point); return(SphereEvaluator.Apply(wrapper, C.Value, Alpha.Value)); }
protected override double Evaluate(double quality, RealVector point, AdditiveMove move) { RealVectorAdditiveMoveWrapper wrapper = new RealVectorAdditiveMoveWrapper(move, point); return SphereEvaluator.Apply(wrapper, C.Value, Alpha.Value); }