Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
11/11/12 22:57:09 (11 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
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Encodings.ScheduleEncoding/3.3/ScheduleCrossover.cs

    r8603 r8887  
    3030  [Item("ScheduleCrossover", "A scheduling crossover operation.")]
    3131  [StorableClass]
    32   public abstract class ScheduleCrossover<T> : SingleSuccessorOperator, IScheduleCrossover, IStochasticOperator where T : Item {
    33     #region IScheduleCrossover Members
    34     public ILookupParameter<ItemArray<T>> ParentsParameter {
    35       get { return (ScopeTreeLookupParameter<T>)Parameters["Parents"]; }
     32  public abstract class ScheduleCrossover : SingleSuccessorOperator, IScheduleCrossover, IStochasticOperator {
     33
     34    public ILookupParameter<IScheduleEncoding> ChildParameter {
     35      get { return (ILookupParameter<IScheduleEncoding>)Parameters["Child"]; }
    3636    }
    37 
    38     public ILookupParameter<T> ChildParameter {
    39       get { return (ILookupParameter<T>)Parameters["Child"]; }
     37    public IScopeTreeLookupParameter<IScheduleEncoding> ParentsParameter {
     38      get { return (IScopeTreeLookupParameter<IScheduleEncoding>)Parameters["Parents"]; }
    4039    }
    41     #endregion
    42 
    4340    public ILookupParameter<IRandom> RandomParameter {
    4441      get { return (LookupParameter<IRandom>)Parameters["Random"]; }
     
    4744    [StorableConstructor]
    4845    protected ScheduleCrossover(bool deserializing) : base(deserializing) { }
    49     protected ScheduleCrossover(ScheduleCrossover<T> original, Cloner cloner)
    50       : base(original, cloner) {
    51     }
     46    protected ScheduleCrossover(ScheduleCrossover original, Cloner cloner) : base(original, cloner) { }
    5247    public ScheduleCrossover()
    5348      : base() {
    5449      Parameters.Add(new LookupParameter<IRandom>("Random", "The pseudo random number generator which should be used for stochastic manipulation operators."));
    55       Parameters.Add(new ScopeTreeLookupParameter<T>("Parents", "The parent solution which should be crossed."));
     50      Parameters.Add(new LookupParameter<IScheduleEncoding>("Child", "The child solution resulting from the crossover."));
     51      ChildParameter.ActualName = "SchedulingSolution";
     52      Parameters.Add(new ScopeTreeLookupParameter<IScheduleEncoding>("Parents", "The parent solution which should be crossed."));
    5653      ParentsParameter.ActualName = "SchedulingSolution";
    57       Parameters.Add(new LookupParameter<T>("Child", "The child solution resulting from the crossover."));
    58       ChildParameter.ActualName = "SchedulingSolution";
    5954    }
    6055  }
Note: See TracChangeset for help on using the changeset viewer.