示例#1
0
        public void Evaluate()
        {
            Rosenbrock function = new Rosenbrock();

            Vector v1 = new Vector(new double[] { 1, 2, 3 });
            Vector v2 = new Vector(new double[] { 3, 2, 1 });
            Vector v3 = new Vector(new double[] { 1, 2, 3, 4 });

            Assert.AreEqual(201, function.Evaluate(v1));
            Assert.AreEqual(5805, function.Evaluate(v2));
            Assert.AreEqual(2705, function.Evaluate(v3));
        }
示例#2
0
        public void TwoDim_EvaluatesCorrectValues(double[] values)
        {
            var evaluator = new Rosenbrock(2);
            var ds        = evaluator.GetGlobalOptimum().GetDecisionSpace();
            var result    = evaluator.Evaluate(DecisionVector.CreateFromArray(ds, new[] { values[0], values[1] }));

            Assert.Equal(values[2], result.ElementAt(0));
        }