Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
02/07/15 13:52:48 (9 years ago)
Author:
abeham
Message:

#2174:

  • Added ISingleObjectiveOperator and IMultiObjectiveOperator interfaces
    • Added interface to all operators that would fall in either of these categories (excluding MainLoop operators)
  • Added some checks in BasicProblem on whether the MultiEncoding is being used
    • A new event handler is added that reacts on encodings being removed or added to the MultiEncoding
  • Added code to remove the non-fit operators in (Single|Multi)ObjectiveBasicProblem
Location:
trunk/sources/HeuristicLab.Encodings.RealVectorEncoding/3.3
Files:
4 edited

Legend:

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

    r11171 r11970  
    2424using HeuristicLab.Core;
    2525using HeuristicLab.Data;
     26using HeuristicLab.Optimization;
    2627using HeuristicLab.Parameters;
    2728using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     
    4041  [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.")]
    4142  [StorableClass]
    42   public class BlendAlphaBetaCrossover : RealVectorCrossover {
     43  public class BlendAlphaBetaCrossover : RealVectorCrossover, ISingleObjectiveOperator {
    4344    /// <summary>
    4445    /// Whether the problem is a maximization or minimization problem.
  • trunk/sources/HeuristicLab.Encodings.RealVectorEncoding/3.3/Crossovers/HeuristicCrossover.cs

    r11171 r11970  
    2424using HeuristicLab.Core;
    2525using HeuristicLab.Data;
     26using HeuristicLab.Optimization;
    2627using HeuristicLab.Parameters;
    2728using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     
    3738  [Item("HeuristicCrossover", "The heuristic crossover produces offspring that extend the better parent in direction from the worse to the better parent. It is implemented as described in Wright, A.H. (1994), Genetic algorithms for real parameter optimization, Foundations of Genetic Algorithms, G.J.E. Rawlins (Ed.), Morgan Kaufmann, San Mateo, CA, 205-218.")]
    3839  [StorableClass]
    39   public class HeuristicCrossover : RealVectorCrossover {
     40  public class HeuristicCrossover : RealVectorCrossover, ISingleObjectiveOperator {
    4041    /// <summary>
    4142    /// Whether the problem is a maximization or minimization problem.
  • trunk/sources/HeuristicLab.Encodings.RealVectorEncoding/3.3/Moves/AdditiveMoveMaker.cs

    r11171 r11970  
    3131  [Item("AdditiveMoveMaker", "Peforms an additive move on a given real vector and updates the quality.")]
    3232  [StorableClass]
    33   public class AdditiveMoveMaker : SingleSuccessorOperator, IAdditiveRealVectorMoveOperator, IMoveMaker {
     33  public class AdditiveMoveMaker : SingleSuccessorOperator, IAdditiveRealVectorMoveOperator, IMoveMaker, ISingleObjectiveOperator {
    3434    public override bool CanChangeName {
    3535      get { return false; }
  • trunk/sources/HeuristicLab.Encodings.RealVectorEncoding/3.3/ParticleOperators/RealVectorSwarmUpdater.cs

    r11171 r11970  
    3535  [Item("RealVectorSwarmUpdater", "Updates personal best point and quality as well as global best point and quality.")]
    3636  [StorableClass]
    37   public sealed class RealVectorSwarmUpdater : SingleSuccessorOperator, IRealVectorSwarmUpdater {
     37  public sealed class RealVectorSwarmUpdater : SingleSuccessorOperator, IRealVectorSwarmUpdater, ISingleObjectiveOperator {
    3838
    3939    [Storable]
     
    235235
    236236    void VelocityBoundsStartValueParameter_Value_ValueChanged(object sender, EventArgs e) {
    237       UpdateVelocityBoundsParamater(); 
     237      UpdateVelocityBoundsParamater();
    238238    }
    239239
     
    257257        VelocityBoundsStartValueParameter.Value.ValueChanged += new EventHandler(VelocityBoundsStartValueParameter_Value_ValueChanged);
    258258      }
    259       UpdateVelocityBoundsParamater(); 
     259      UpdateVelocityBoundsParamater();
    260260    }
    261261
Note: See TracChangeset for help on using the changeset viewer.