Free cookie consent management tool by TermsFeed Policy Generator

Changeset 3907


Ignore:
Timestamp:
06/09/10 09:09:39 (14 years ago)
Author:
abeham
Message:

#1035

  • Description of BLX-a-b improved
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Encodings.RealVectorEncoding/3.3/Crossovers/BlendAlphaBetaCrossover.cs

    r3659 r3907  
    3838  /// The default value for alpha is 0.75, the default value for beta is 0.25.
    3939  /// </remarks>
    40   [Item("BlendAlphaBetaCrossover", "The blend alpha beta crossover (BLX-a-b) for real vectors is similar to the blend alpha crossover (BLX-a), but distinguishes between the better and worse of the parents. The interval from which to choose the new offspring can be extended more around the better parent by specifying a higher alpha value. It is implemented as described in Takahashi, M. and Kita, H. 2001. A crossover operator using independent component analysis for real-coded genetic algorithms Proceedings of the 2001 Congress on Evolutionary Computation, pp. 643-649.")]
     40  [Item("BlendAlphaBetaCrossover", "The blend alpha beta crossover (BLX-a-b) for real vectors is similar to the blend alpha crossover (BLX-a), but distinguishes between the better and worse of the parents. The interval from which to choose the new offspring can be extended beyond the better parent by specifying a higher alpha value, and beyond the worse parent by specifying a higher beta value. The new offspring is sampled uniformly in the extended range. It is implemented as described in Takahashi, M. and Kita, H. 2001. A crossover operator using independent component analysis for real-coded genetic algorithms Proceedings of the 2001 Congress on Evolutionary Computation, pp. 643-649.")]
    4141  [StorableClass]
    4242  public class BlendAlphaBetaCrossover : RealVectorCrossover {
     
    5454    }
    5555    /// <summary>
    56     /// The alpha parameter specifies how much the interval between the parents should be extended in direction of the better parent.
     56    /// The Alpha parameter controls the extension of the range beyond the better parent. The value must be >= 0 and does not depend on Beta.
    5757    /// </summary>
    5858    public ValueLookupParameter<DoubleValue> AlphaParameter {
     
    6060    }
    6161    /// <summary>
    62     /// The beta parameter specifies how much the interval between the parents should be extended in direction of the worse parent.
     62    /// The Beta parameter controls the extension of the range beyond the worse parent. The value must be >= 0 and does not depend on Alpha.
    6363    /// </summary>
    6464    public ValueLookupParameter<DoubleValue> BetaParameter {
     
    7474      Parameters.Add(new ValueLookupParameter<BoolValue>("Maximization", "Whether the problem is a maximization problem or not."));
    7575      Parameters.Add(new ScopeTreeLookupParameter<DoubleValue>("Quality", "The quality values of the parents."));
    76       Parameters.Add(new ValueLookupParameter<DoubleValue>("Alpha", "The value for alpha.", new DoubleValue(0.75)));
    77       Parameters.Add(new ValueLookupParameter<DoubleValue>("Beta", "The value for beta.", new DoubleValue(0.25)));
     76      Parameters.Add(new ValueLookupParameter<DoubleValue>("Alpha", "The Alpha parameter controls the extension of the range beyond the better parent. The value must be >= 0 and does not depend on Beta.", new DoubleValue(0.75)));
     77      Parameters.Add(new ValueLookupParameter<DoubleValue>("Beta", "The Beta parameter controls the extension of the range beyond the worse parent. The value must be >= 0 and does not depend on Alpha.", new DoubleValue(0.25)));
    7878    }
    7979
     
    141141      ItemArray<DoubleValue> qualities = QualityParameter.ActualValue;
    142142      bool maximization = MaximizationParameter.ActualValue.Value;
    143       // the better parent
    144143      if (maximization && qualities[0].Value >= qualities[1].Value || !maximization && qualities[0].Value <= qualities[1].Value)
    145144        return Apply(random, parents[0], parents[1], AlphaParameter.ActualValue, BetaParameter.ActualValue);
Note: See TracChangeset for help on using the changeset viewer.