Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
11/11/12 22:57:09 (12 years ago)
Author:
abeham
Message:

#1329:

  • Moved decoders and evaluators from encoding to problem
  • Removed unnecessary state variables in operators
  • Introduced parameters in interfaces and added wiring code
  • Removed ConcreteScheduleManipulator as it does not perform any manipulation
  • Made ErrorPolicy and ForcingStrategy configurable and added views for them
  • Renamed the SchedulingEvaluationAlgorithm and also converted the AlgorithmOperator to a SingleSuccessorOperator
  • Fixed Plugin- and AssemblyFileVersion
  • Added missing license headers
Location:
trunk/sources/HeuristicLab.Encodings.ScheduleEncoding/3.3/PriorityRulesVector/Crossovers
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Encodings.ScheduleEncoding/3.3/PriorityRulesVector/Crossovers/PRVCrossover.cs

    r8603 r8887  
    2727  [Item("PRVCrossover", "An operator which crosses two PRV representations.")]
    2828  [StorableClass]
    29   public abstract class PRVCrossover : ScheduleCrossover<PRVEncoding>, IPRVOperator {
     29  public abstract class PRVCrossover : ScheduleCrossover, IPRVOperator {
     30
    3031    [StorableConstructor]
    3132    protected PRVCrossover(bool deserializing) : base(deserializing) { }
     
    3738    }
    3839
    39 
    4040    public abstract PRVEncoding Cross(IRandom random, PRVEncoding parent1, PRVEncoding parent2);
    4141
    4242    public override IOperation Apply() {
    43       ItemArray<PRVEncoding> parents = ParentsParameter.ActualValue;
     43      var parents = ParentsParameter.ActualValue;
    4444      ChildParameter.ActualValue =
    4545        Cross(RandomParameter.ActualValue, parents[0] as PRVEncoding, parents[1] as PRVEncoding);
  • trunk/sources/HeuristicLab.Encodings.ScheduleEncoding/3.3/PriorityRulesVector/Crossovers/PRVDiscreteCrossover.cs

    r8603 r8887  
    2929  [StorableClass]
    3030  public class PRVDiscreteCrossover : PRVCrossover {
     31
    3132    [StorableConstructor]
    3233    protected PRVDiscreteCrossover(bool deserializing) : base(deserializing) { }
    33     protected PRVDiscreteCrossover(PRVDiscreteCrossover original, Cloner cloner)
    34       : base(original, cloner) {
    35     }
     34    protected PRVDiscreteCrossover(PRVDiscreteCrossover original, Cloner cloner) : base(original, cloner) { }
     35    public PRVDiscreteCrossover() : base() { }
     36
    3637    public override IDeepCloneable Clone(Cloner cloner) {
    3738      return new PRVDiscreteCrossover(this, cloner);
    3839    }
    39     public PRVDiscreteCrossover() : base() { }
    40 
    4140
    4241    public static PRVEncoding Apply(IRandom random, PRVEncoding parent1, PRVEncoding parent2) {
    4342      return new PRVEncoding(DiscreteCrossover.Apply(random, new ItemArray<IntegerVector>(new IntegerVector[] { parent1.PriorityRulesVector, parent2.PriorityRulesVector })), parent1.NrOfRules);
    4443    }
     44
    4545    public override PRVEncoding Cross(IRandom random, PRVEncoding parent1, PRVEncoding parent2) {
    4646      return Apply(random, parent1, parent2);
  • trunk/sources/HeuristicLab.Encodings.ScheduleEncoding/3.3/PriorityRulesVector/Crossovers/PRVSinglePointCrossover.cs

    r8603 r8887  
    2929  [StorableClass]
    3030  public class PRVSinglePointCrossover : PRVCrossover {
     31
    3132    [StorableConstructor]
    3233    protected PRVSinglePointCrossover(bool deserializing) : base(deserializing) { }
    33     protected PRVSinglePointCrossover(PRVSinglePointCrossover original, Cloner cloner)
    34       : base(original, cloner) {
    35     }
     34    protected PRVSinglePointCrossover(PRVSinglePointCrossover original, Cloner cloner) : base(original, cloner) { }
     35    public PRVSinglePointCrossover() : base() { }
     36
    3637    public override IDeepCloneable Clone(Cloner cloner) {
    3738      return new PRVSinglePointCrossover(this, cloner);
    3839    }
    39     public PRVSinglePointCrossover() : base() { }
    4040
    4141    public static PRVEncoding Apply(IRandom random, PRVEncoding parent1, PRVEncoding parent2) {
Note: See TracChangeset for help on using the changeset viewer.