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) { return(RandomParameter.ActualValue.NextDouble()); }
public RealVectorAdditiveMoveWrapper(AdditiveMove move, RealVector vector) { dimension = move.Dimension; moveDistance = move.MoveDistance; this.vector = vector; }
protected abstract double Evaluate(double quality, RealVector point, AdditiveMove move);
protected override double Evaluate(double quality, RealVector point, AdditiveMove move) { RealVectorAdditiveMoveWrapper wrapper = new RealVectorAdditiveMoveWrapper(move, point); return(SphereEvaluator.Apply(wrapper, C.Value, Alpha.Value)); }