Ignore:
Timestamp:
05/06/10 16:53:52 (12 years ago)
Author:
abeham
Message:

#890

  • updated MichalewiczNonUniform(All|One)PositionsManipulator to default to "Generations" and added better explanation of one of the parameters
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Encodings.RealVectorEncoding/3.3/Manipulators/MichalewiczNonUniformOnePositionManipulator.cs

    r3376 r3677  
    4242    /// </summary>
    4343    public LookupParameter<IntValue> GenerationParameter {
    44       get { return (LookupParameter<IntValue>)Parameters["Generation"]; }
     44      get { return (LookupParameter<IntValue>)Parameters["Generations"]; }
    4545    }
    4646    /// <summary>
     
    6464    public MichalewiczNonUniformOnePositionManipulator()
    6565      : base() {
    66       Parameters.Add(new LookupParameter<IntValue>("Generation", "Current generation of the algorithm"));
     66      Parameters.Add(new LookupParameter<IntValue>("Generations", "Current generation of the algorithm"));
    6767      Parameters.Add(new LookupParameter<IntValue>("MaximumGenerations", "Maximum number of generations"));
    68       Parameters.Add(new ValueLookupParameter<DoubleValue>("GenerationDependency", "Specifies the degree of dependency on the number of generations", new DoubleValue(5)));
     68      Parameters.Add(new ValueLookupParameter<DoubleValue>("GenerationDependency", "Specifies the degree of dependency on the number of generations. A value of 0 means no dependency and the higher the value the stronger the progress towards maximum generations will be taken into account by sampling closer around the current position. Value must be >= 0.", new DoubleValue(5)));
    6969    }
    7070
     
    7979    /// <param name="currentGeneration">The current generation of the algorithm.</param>
    8080    /// <param name="maximumGenerations">Maximum number of generations.</param>
    81     /// <param name="generationsDependency">Specifies the degree of dependency on the number of generations.</param>
     81    /// <param name="generationsDependency">Specifies the degree of dependency on the number of generations. A value of 0 means no dependency and the higher the value the stronger the progress towards maximum generations will be taken into account by sampling closer around the current position. Value must be >= 0.</param>
    8282    /// <returns>The manipulated real vector.</returns>
    8383    public static void Apply(IRandom random, RealVector vector, DoubleMatrix bounds, IntValue currentGeneration, IntValue maximumGenerations, DoubleValue generationsDependency) {
    8484      if (currentGeneration.Value > maximumGenerations.Value) throw new ArgumentException("MichalewiczNonUniformOnePositionManipulator: CurrentGeneration must be smaller or equal than MaximumGeneration", "currentGeneration");
     85      if (generationsDependency.Value < 0) throw new ArgumentException("MichalewiczNonUniformOnePositionManipulator: GenerationsDependency must be >= 0.");
    8586      int length = vector.Length;
    8687      int index = random.Next(length);
Note: See TracChangeset for help on using the changeset viewer.