Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
03/22/10 01:20:49 (14 years ago)
Author:
abeham
Message:

Updated test functions problem #934

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Problems.TestFunctions.SingleObjective/3.3/Evaluators/LevyEvaluator.cs

    r3150 r3154  
    11#region License Information
    22/* HeuristicLab
    3  * Copyright (C) 2002-2008 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
    44 *
    55 * This file is part of HeuristicLab.
     
    2121
    2222using System;
    23 using System.Collections.Generic;
    24 using System.Text;
     23using HeuristicLab.Core;
     24using HeuristicLab.Data;
     25using HeuristicLab.Encodings.RealVectorEncoding;
     26using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
    2527
    26 namespace HeuristicLab.TestFunctions {
     28namespace HeuristicLab.Problems.TestFunctions.SingleObjective {
    2729  /// <summary>
    2830  /// Levy Function<br/>
     
    3032  /// Optimum: 0.0 at (1.0, 1.0, ..., 1.0)
    3133  /// </summary>
    32   public class LevyEvaluator : TestFunctionEvaluatorBase {
    33     /// <inheritdoc select="summary"/>
    34     public override string Description {
    35       get { return
    36 @"Levy Function
    37 
    38 Domain:  [-10.0 , 10.0]^n
    39 Optimum: 0.0 at (1.0, 1.0, ..., 1.0)";
    40           }
     34  [Item("LevyEvaluator", "Evaluates the Levy function on a given point. The optimum of this function is 0 at (1,1,...,1).")]
     35  [StorableClass]
     36  public class LevyEvaluator : SingleObjectiveTestFunctionEvaluator {
     37    /// <summary>
     38    /// Returns false as the Levy function is a minimization problem.
     39    /// </summary>
     40    public override bool Maximization {
     41      get { return false; }
     42    }
     43    /// <summary>
     44    /// Gets the optimum function value (0).
     45    /// </summary>
     46    public override double BestKnownQuality {
     47      get { return 0; }
     48    }
     49    /// <summary>
     50    /// Gets the lower and upper bound of the function.
     51    /// </summary>
     52    public override DoubleMatrix Bounds {
     53      get { return new DoubleMatrix(new double[,] { { -10, 10 } }); }
     54    }
     55    /// <summary>
     56    /// Gets the minimum problem size (2).
     57    /// </summary>
     58    public override int MinimumProblemSize {
     59      get { return 2; }
     60    }
     61    /// <summary>
     62    /// Gets the (theoretical) maximum problem size (2^31 - 1).
     63    /// </summary>
     64    public override int MaximumProblemSize {
     65      get { return int.MaxValue; }
    4166    }
    4267
     
    4671    /// <param name="point">N-dimensional point for which the test function should be evaluated.</param>
    4772    /// <returns>The result value of the Levy function at the given point.</returns>
    48     public static double Apply(double[] point) {
     73    public static double Apply(RealVector point) {
    4974      int length = point.Length;
    5075      double[] z = new double[length];
     
    7095    /// <param name="point">N-dimensional point for which the test function should be evaluated.</param>
    7196    /// <returns>The result value of the Levy function at the given point.</returns>
    72     protected override double EvaluateFunction(double[] point) {
     97    protected override double EvaluateFunction(RealVector point) {
    7398      return Apply(point);
    7499    }
Note: See TracChangeset for help on using the changeset viewer.