Changeset 10096


Ignore:
Timestamp:
10/30/13 17:05:39 (6 years ago)
Author:
ascheibe
Message:

#1886 started working on crossover wrappers that can execute analyzers for crossovers

Location:
branches/HeuristicLab.Analysis.AlgorithmBehavior
Files:
5 added
5 edited

Legend:

Unmodified
Added
Removed
  • branches/HeuristicLab.Analysis.AlgorithmBehavior/HeuristicLab.Analysis.AlgorithmBehavior.Analyzers/3.3/CombinedOperators/TFAfterCrossoverCombinedOperator.cs

    r9789 r10096  
    2020#endregion
    2121
     22using HeuristicLab.Analysis.SolutionCaching.RealVectorEncoding;
    2223using HeuristicLab.Common;
    2324using HeuristicLab.Core;
     
    2728  [Item("TFAfterCrossoverCombinedOperator", "An operator that contains all operators that need to be executed after crossover for test functions.")]
    2829  [StorableClass]
    29   public class TFAfterCrossoverCombinedOperator : AfterCrossoverCombinedOperator {
     30  public class TFAfterCrossoverCombinedOperator : AfterCrossoverCombinedOperator, IRealVectorAdvice {
    3031
    3132    [StorableConstructor]
  • branches/HeuristicLab.Analysis.AlgorithmBehavior/HeuristicLab.Analysis.SolutionCaching/3.3/HeuristicLab.Analysis.SolutionCaching-3.3.csproj

    r10091 r10096  
    127127    <Compile Include="Algorithm\SolutionCacheAnalyzerAlgorithm.cs" />
    128128    <Compile Include="Algorithm\ParallelOperatorProcessor.cs" />
     129    <Compile Include="IAdvice.cs" />
     130    <Compile Include="IPointcut.cs" />
    129131    <Compile Include="ISolutionCache.cs" />
    130132    <Compile Include="PermutationEncoding\PermutationSolutionCache.cs" />
     
    133135    <Compile Include="Plugin.cs" />
    134136    <Compile Include="Properties\AssemblyInfo.cs" />
     137    <Compile Include="RealVectorEncoding\IRealVectorAdvice.cs" />
     138    <Compile Include="RealVectorEncoding\IRealVectorPointcut.cs" />
     139    <Compile Include="RealVectorEncoding\RealVectorCrossoverPointcut.cs" />
    135140    <Compile Include="RealVectorEncoding\RealVectorEqualityComparer.cs" />
    136141    <Compile Include="RealVectorEncoding\RealVectorSolutionCache.cs" />
  • branches/HeuristicLab.Analysis.AlgorithmBehavior/HeuristicLab.Analysis.SolutionCaching/3.3/PermutationEncoding/PermutationSolutionInformation.cs

    r10025 r10096  
    2020#endregion
    2121
    22 using System.Collections.Generic;
    2322using HeuristicLab.Common;
    2423using HeuristicLab.Core;
     
    3029  [StorableClass]
    3130  public class PermutationSolutionInformation : SolutionInformation<Encodings.PermutationEncoding.Permutation> {
    32     public PermutationSolutionInformation() {
    33       ParentList = new List<Permutation>();
    34     }
     31    public PermutationSolutionInformation() : base() { }
    3532    [StorableConstructor]
    3633    protected PermutationSolutionInformation(bool deserializing) : base(deserializing) { }
  • branches/HeuristicLab.Analysis.AlgorithmBehavior/HeuristicLab.Analysis.SolutionCaching/3.3/RealVectorEncoding/RealVectorSolutionInformation.cs

    r10024 r10096  
    2020#endregion
    2121
    22 using System.Collections.Generic;
    2322using HeuristicLab.Common;
    2423using HeuristicLab.Core;
    25 using HeuristicLab.Encodings.RealVectorEncoding;
    2624using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
    2725
     
    3028  [StorableClass]
    3129  public class RealVectorSolutionInformation : SolutionInformation<Encodings.RealVectorEncoding.RealVector> {
    32     public RealVectorSolutionInformation() {
    33       ParentList = new List<RealVector>();
    34     }
     30    public RealVectorSolutionInformation() : base() { }
    3531    [StorableConstructor]
    3632    protected RealVectorSolutionInformation(bool deserializing) : base(deserializing) { }
  • branches/HeuristicLab.Analysis.AlgorithmBehavior/HeuristicLab.Analysis.SolutionCaching/3.3/SolutionInformation.cs

    r10023 r10096  
    2323using HeuristicLab.Common;
    2424using HeuristicLab.Core;
     25using HeuristicLab.Optimization;
    2526using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
    2627
     
    3738    [Storable]
    3839    public int Generation { get; set; }
     40    [Storable]
     41    public ResultCollection InfoStore { get; set; }
    3942
    40     public SolutionInformation() { }
     43    public SolutionInformation() {
     44      ParentList = new List<T>();
     45      InfoStore = new ResultCollection();
     46    }
    4147
    4248    [StorableConstructor]
     
    4753      this.ParentList = new List<T>(original.ParentList);
    4854      this.Generation = original.Generation;
     55      this.InfoStore = (ResultCollection)original.InfoStore.Clone(cloner);
    4956    }
    5057
     
    6673          if (!pi.ParentList.Contains(p)) return false;
    6774        }
     75        foreach (IResult info in InfoStore) {
     76          if (!pi.InfoStore.Contains(info)) return false;
     77        }
    6878        return true;
    6979      } else {
     
    7181      }
    7282    }
     83
     84    public virtual void AddInfo(Result info) {
     85      InfoStore.Add(info);
     86    }
    7387  }
    7488}
Note: See TracChangeset for help on using the changeset viewer.