Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
12/28/18 16:10:48 (6 years ago)
Author:
jkarder
Message:

#2520: worked on reintegration of new persistence

  • added nuget references to HEAL.Fossil
  • added StorableType attributes to many classes
  • changed signature of StorableConstructors
  • removed some classes in old persistence
  • removed some unnecessary usings
Location:
branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3
Files:
29 edited

Legend:

Unmodified
Added
Removed
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/BoundedIntegerVectorCrossover.cs

    r16453 r16462  
    2525using HeuristicLab.Data;
    2626using HeuristicLab.Parameters;
    27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     27using HEAL.Fossil;
    2828
    2929namespace HeuristicLab.Encodings.IntegerVectorEncoding {
    3030  [Item("BoundedIntegerVectorCrossover", "Base class for bounded crossovers.")]
    31   [StorableClass]
     31  [StorableType("90834C8F-461F-4A94-A7CB-25C8D1063604")]
    3232  public abstract class BoundedIntegerVectorCrossover : IntegerVectorCrossover, IBoundedIntegerVectorOperator {
    3333
     
    3737
    3838    [StorableConstructor]
    39     protected BoundedIntegerVectorCrossover(bool deserializing) : base(deserializing) { }
     39    protected BoundedIntegerVectorCrossover(StorableConstructorFlag _) : base(_) { }
    4040    protected BoundedIntegerVectorCrossover(BoundedIntegerVectorCrossover original, Cloner cloner) : base(original, cloner) { }
    4141    public BoundedIntegerVectorCrossover()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/BoundedIntegerVectorManipulator.cs

    r16453 r16462  
    2525using HeuristicLab.Data;
    2626using HeuristicLab.Parameters;
    27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     27using HEAL.Fossil;
    2828
    2929namespace HeuristicLab.Encodings.IntegerVectorEncoding {
    3030  [Item("BoundedIntegerVectorManipulator", "Base class for bounded integer vector manipulators.")]
    31   [StorableClass]
     31  [StorableType("A2B6079B-19AC-4518-91FB-8BEDFC8C776F")]
    3232  public abstract class BoundedIntegerVectorManipulator : IntegerVectorManipulator, IBoundedIntegerVectorOperator {
    3333
     
    3737
    3838    [StorableConstructor]
    39     protected BoundedIntegerVectorManipulator(bool deserializing) : base(deserializing) { }
     39    protected BoundedIntegerVectorManipulator(StorableConstructorFlag _) : base(_) { }
    4040    protected BoundedIntegerVectorManipulator(BoundedIntegerVectorManipulator original, Cloner cloner) : base(original, cloner) { }
    4141    public BoundedIntegerVectorManipulator()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Creators/UniformRandomIntegerVectorCreator.cs

    r16453 r16462  
    2323using HeuristicLab.Core;
    2424using HeuristicLab.Data;
    25 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     25using HEAL.Fossil;
    2626
    2727namespace HeuristicLab.Encodings.IntegerVectorEncoding {
     
    3030  /// </summary>
    3131  [Item("UniformRandomIntegerVectorCreator", "An operator which creates a new random int vector with each element uniformly distributed in a specified range.")]
    32   [StorableClass]
     32  [StorableType("23B6374A-EE3B-4487-B728-635395D5F1B7")]
    3333  public class UniformRandomIntegerVectorCreator : IntegerVectorCreator {
    3434    [StorableConstructor]
    35     protected UniformRandomIntegerVectorCreator(bool deserializing) : base(deserializing) { }
     35    protected UniformRandomIntegerVectorCreator(StorableConstructorFlag _) : base(_) { }
    3636    protected UniformRandomIntegerVectorCreator(UniformRandomIntegerVectorCreator original, Cloner cloner) : base(original, cloner) { }
    3737    public UniformRandomIntegerVectorCreator() : base() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/DiscreteCrossover.cs

    r16453 r16462  
    2323using HeuristicLab.Common;
    2424using HeuristicLab.Core;
    25 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     25using HEAL.Fossil;
    2626
    2727namespace HeuristicLab.Encodings.IntegerVectorEncoding {
     
    3333  /// </remarks>
    3434  [Item("DiscreteCrossover", "Discrete crossover for integer vectors. It is implemented as described in Gwiazda, T.D. 2006. Genetic algorithms reference Volume I Crossover for single-objective numerical optimization problems, p.17.")]
    35   [StorableClass]
     35  [StorableType("64C79AA5-1D77-4CF4-A19B-9646F270E4D8")]
    3636  public class DiscreteCrossover : IntegerVectorCrossover {
    3737    [StorableConstructor]
    38     protected DiscreteCrossover(bool deserializing) : base(deserializing) { }
     38    protected DiscreteCrossover(StorableConstructorFlag _) : base(_) { }
    3939    protected DiscreteCrossover(DiscreteCrossover original, Cloner cloner) : base(original, cloner) { }
    4040    public DiscreteCrossover() : base() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/MultiIntegerVectorCrossover.cs

    r16453 r16462  
    2929using HeuristicLab.Optimization;
    3030using HeuristicLab.Parameters;
    31 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     31using HEAL.Fossil;
    3232using HeuristicLab.PluginInfrastructure;
    3333
    3434namespace HeuristicLab.Encodings.IntegerVectorEncoding {
    3535  [Item("MultiIntegerVectorCrossover", "Randomly selects and applies one of its crossovers every time it is called.")]
    36   [StorableClass]
     36  [StorableType("EC482D88-4258-48D3-BCD2-C6FC013C8FED")]
    3737  public class MultiIntegerVectorCrossover : StochasticMultiBranch<IIntegerVectorCrossover>, IIntegerVectorCrossover, IStochasticOperator, IBoundedIntegerVectorOperator {
    3838    public override bool CanChangeName {
     
    5656
    5757    [StorableConstructor]
    58     protected MultiIntegerVectorCrossover(bool deserializing) : base(deserializing) { }
     58    protected MultiIntegerVectorCrossover(StorableConstructorFlag _) : base(_) { }
    5959    protected MultiIntegerVectorCrossover(MultiIntegerVectorCrossover original, Cloner cloner) : base(original, cloner) { }
    6060    public MultiIntegerVectorCrossover()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/RoundedAverageCrossover.cs

    r16453 r16462  
    2424using HeuristicLab.Core;
    2525using HeuristicLab.Data;
    26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     26using HEAL.Fossil;
    2727
    2828namespace HeuristicLab.Encodings.IntegerVectorEncoding {
     
    3131  /// </summary>
    3232  [Item("RoundedAverageCrossover", "Average crossover for integer vectors.")]
    33   [StorableClass]
     33  [StorableType("6899DA13-4004-4E22-99B5-46FE6E3418FA")]
    3434  public class RoundedAverageCrossover : BoundedIntegerVectorCrossover, IBoundedIntegerVectorOperator {
    3535
    3636    [StorableConstructor]
    37     protected RoundedAverageCrossover(bool deserializing) : base(deserializing) { }
     37    protected RoundedAverageCrossover(StorableConstructorFlag _) : base(_) { }
    3838    protected RoundedAverageCrossover(RoundedAverageCrossover original, Cloner cloner) : base(original, cloner) { }
    3939    public RoundedAverageCrossover() : base() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/RoundedBlendAlphaBetaCrossover.cs

    r16453 r16462  
    2626using HeuristicLab.Optimization;
    2727using HeuristicLab.Parameters;
    28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HEAL.Fossil;
    2929
    3030namespace HeuristicLab.Encodings.IntegerVectorEncoding {
     
    3737  /// </summary>
    3838  [Item("RoundedBlendAlphaBetaCrossover", "The rounded blend alpha beta crossover (BLX-a-b) for integer 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 and rounded to the next feasible integer.")]
    39   [StorableClass]
     39  [StorableType("E9786DA1-C713-44EA-AD2A-BBE371712BA2")]
    4040  public class RoundedBlendAlphaBetaCrossover : BoundedIntegerVectorCrossover, ISingleObjectiveOperator {
    4141    /// <summary>
     
    6565
    6666    [StorableConstructor]
    67     protected RoundedBlendAlphaBetaCrossover(bool deserializing) : base(deserializing) { }
     67    protected RoundedBlendAlphaBetaCrossover(StorableConstructorFlag _) : base(_) { }
    6868    protected RoundedBlendAlphaBetaCrossover(RoundedBlendAlphaBetaCrossover original, Cloner cloner) : base(original, cloner) { }
    6969    /// <summary>
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/RoundedBlendAlphaCrossover.cs

    r16453 r16462  
    2525using HeuristicLab.Data;
    2626using HeuristicLab.Parameters;
    27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     27using HEAL.Fossil;
    2828
    2929namespace HeuristicLab.Encodings.IntegerVectorEncoding {
     
    3434  /// </summary>
    3535  [Item("RoundedBlendAlphaCrossover", "The rounded blend alpha crossover (BLX-a) for integer vectors creates new offspring by sampling a new value in the range [min_i - d * alpha, max_i + d * alpha) at each position i and rounding the result to the next feasible integer. Here min_i and max_i are the smaller and larger value of the two parents at position i and d is max_i - min_i.")]
    36   [StorableClass]
     36  [StorableType("F371B342-7D0C-4ED9-8F3F-A641E82DC8F1")]
    3737  public class RoundedBlendAlphaCrossover : BoundedIntegerVectorCrossover {
    3838    /// <summary>
     
    4747
    4848    [StorableConstructor]
    49     protected RoundedBlendAlphaCrossover(bool deserializing) : base(deserializing) { }
     49    protected RoundedBlendAlphaCrossover(StorableConstructorFlag _) : base(_) { }
    5050    protected RoundedBlendAlphaCrossover(RoundedBlendAlphaCrossover original, Cloner cloner) : base(original, cloner) { }
    5151    /// <summary>
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/RoundedHeuristicCrossover.cs

    r16453 r16462  
    2626using HeuristicLab.Optimization;
    2727using HeuristicLab.Parameters;
    28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HEAL.Fossil;
    2929
    3030namespace HeuristicLab.Encodings.IntegerVectorEncoding {
     
    3535  /// </summary>
    3636  [Item("RoundedHeuristicCrossover", "The heuristic crossover produces offspring that extend the better parent in direction from the worse to the better parent.")]
    37   [StorableClass]
     37  [StorableType("94963FD3-4092-4B76-88E0-5FE5AC2DA9E2")]
    3838  public class RoundedHeuristicCrossover : BoundedIntegerVectorCrossover, ISingleObjectiveOperator {
    3939    /// <summary>
     
    5151
    5252    [StorableConstructor]
    53     protected RoundedHeuristicCrossover(bool deserializing) : base(deserializing) { }
     53    protected RoundedHeuristicCrossover(StorableConstructorFlag _) : base(_) { }
    5454    protected RoundedHeuristicCrossover(RoundedHeuristicCrossover original, Cloner cloner) : base(original, cloner) { }
    5555    /// <summary>
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/RoundedLocalCrossover.cs

    r16453 r16462  
    2424using HeuristicLab.Core;
    2525using HeuristicLab.Data;
    26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     26using HEAL.Fossil;
    2727
    2828namespace HeuristicLab.Encodings.IntegerVectorEncoding {
     
    3232  /// </remarks>
    3333  [Item("RoundedLocalCrossover", @"The runded local crossover is similar to the arithmetic crossover, but uses a random alpha for each position x = alpha * p1 + (1-alpha) * p2.")]
    34   [StorableClass]
     34  [StorableType("2E21F322-85CD-4B67-AF9C-4119FAABB3C1")]
    3535  public class RoundedLocalCrossover : BoundedIntegerVectorCrossover {
    3636    [StorableConstructor]
    37     protected RoundedLocalCrossover(bool deserializing) : base(deserializing) { }
     37    protected RoundedLocalCrossover(StorableConstructorFlag _) : base(_) { }
    3838    protected RoundedLocalCrossover(RoundedLocalCrossover original, Cloner cloner) : base(original, cloner) { }
    3939    public RoundedLocalCrossover() : base() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/RoundedUniformArithmeticCrossover.cs

    r16453 r16462  
    2525using HeuristicLab.Data;
    2626using HeuristicLab.Parameters;
    27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     27using HEAL.Fossil;
    2828
    2929namespace HeuristicLab.Encodings.IntegerVectorEncoding {
     
    3232  /// </summary>
    3333  [Item("RoundedUniformSomePositionsArithmeticCrossover", "The uniform some positions arithmetic crossover (continuous recombination) constructs an offspring by calculating x = alpha * p1 + (1-alpha) * p2 for a position x in the vector with a given probability (otherwise p1 is taken at this position).")]
    34   [StorableClass]
     34  [StorableType("8393AFC2-FAA5-47A8-A1E3-E6DEABE71B2F")]
    3535  public class RoundedUniformArithmeticCrossover : BoundedIntegerVectorCrossover, IBoundedIntegerVectorOperator {
    3636
     
    4949
    5050    [StorableConstructor]
    51     protected RoundedUniformArithmeticCrossover(bool deserializing) : base(deserializing) { }
     51    protected RoundedUniformArithmeticCrossover(StorableConstructorFlag _) : base(_) { }
    5252    protected RoundedUniformArithmeticCrossover(RoundedUniformArithmeticCrossover original, Cloner cloner) : base(original, cloner) { }
    5353    /// <summary>
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/SinglePointCrossover.cs

    r16453 r16462  
    2323using HeuristicLab.Common;
    2424using HeuristicLab.Core;
    25 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     25using HEAL.Fossil;
    2626
    2727namespace HeuristicLab.Encodings.IntegerVectorEncoding {
     
    3333  /// </remarks>
    3434  [Item("SinglePointCrossover", "Single point crossover for integer vectors. It is implemented as described in Michalewicz, Z. 1999. Genetic Algorithms + Data Structures = Evolution Programs. Third, Revised and Extended Edition, Spring-Verlag Berlin Heidelberg.")]
    35   [StorableClass]
     35  [StorableType("0B985803-CC2D-466B-B5F2-9A1F7C415735")]
    3636  public class SinglePointCrossover : IntegerVectorCrossover {
    3737    [StorableConstructor]
    38     protected SinglePointCrossover(bool deserializing) : base(deserializing) { }
     38    protected SinglePointCrossover(StorableConstructorFlag _) : base(_) { }
    3939    protected SinglePointCrossover(SinglePointCrossover original, Cloner cloner) : base(original, cloner) { }
    4040    public SinglePointCrossover() : base() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/HeuristicLab.Encodings.IntegerVectorEncoding-3.3.csproj

    r16454 r16462  
    102102      <HintPath>..\..\packages\Google.Protobuf.3.6.1\lib\net45\Google.Protobuf.dll</HintPath>
    103103    </Reference>
    104     <Reference Include="HEAL.Fossil, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
     104    <Reference Include="HEAL.Fossil, Version=1.0.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
    105105      <HintPath>..\..\packages\HEAL.Fossil.1.0.0\lib\netstandard2.0\HEAL.Fossil.dll</HintPath>
    106106    </Reference>
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/IntegerVector.cs

    r16453 r16462  
    2424using HeuristicLab.Core;
    2525using HeuristicLab.Data;
    26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     26using HEAL.Fossil;
    2727
    2828namespace HeuristicLab.Encodings.IntegerVectorEncoding {
    29   [StorableClass]
     29  [StorableType("2DDD33C1-4732-478B-83B1-17226A8F2B61")]
    3030  [Item("IntegerVector", "Represents a vector of integer values.")]
    3131  public class IntegerVector : IntArray {
    3232    [StorableConstructor]
    33     protected IntegerVector(bool deserializing) : base(deserializing) { }
     33    protected IntegerVector(StorableConstructorFlag _) : base(_) { }
    3434    protected IntegerVector(IntegerVector original, Cloner cloner) : base(original, cloner) { }
    3535    public IntegerVector() : base() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/IntegerVectorCreator.cs

    r16453 r16462  
    2626using HeuristicLab.Optimization;
    2727using HeuristicLab.Parameters;
    28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HEAL.Fossil;
    2929
    3030namespace HeuristicLab.Encodings.IntegerVectorEncoding {
     
    3333  /// </summary>
    3434  [Item("IntegerVectorCreator", "A base class for operators creating int-valued vectors.")]
    35   [StorableClass]
     35  [StorableType("3C20D629-EFCB-4A1C-81B4-1DF0942B27F7")]
    3636  public abstract class IntegerVectorCreator : InstrumentedOperator, IIntegerVectorCreator, IStochasticOperator {
    3737    public override bool CanChangeName {
     
    5252
    5353    [StorableConstructor]
    54     protected IntegerVectorCreator(bool deserializing) : base(deserializing) { }
     54    protected IntegerVectorCreator(StorableConstructorFlag _) : base(_) { }
    5555    protected IntegerVectorCreator(IntegerVectorCreator original, Cloner cloner) : base(original, cloner) { }
    5656    protected IntegerVectorCreator()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/IntegerVectorCrossover.cs

    r16453 r16462  
    2424using HeuristicLab.Optimization;
    2525using HeuristicLab.Parameters;
    26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     26using HEAL.Fossil;
    2727
    2828namespace HeuristicLab.Encodings.IntegerVectorEncoding {
     
    3131  /// </summary>
    3232  [Item("IntegerVectorCrossover", "A base class for operators that perform a crossover of int-valued vectors.")]
    33   [StorableClass]
     33  [StorableType("BE778213-C140-4B1C-A4A4-1D92D0ADAB45")]
    3434  public abstract class IntegerVectorCrossover : IntegerVectorOperator, IIntegerVectorCrossover, IStochasticOperator {
    3535    public override bool CanChangeName {
     
    4747
    4848    [StorableConstructor]
    49     protected IntegerVectorCrossover(bool deserializing) : base(deserializing) { }
     49    protected IntegerVectorCrossover(StorableConstructorFlag _) : base(_) { }
    5050    protected IntegerVectorCrossover(IntegerVectorCrossover original, Cloner cloner) : base(original, cloner) { }
    5151    protected IntegerVectorCrossover()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/IntegerVectorEncoding.cs

    r16453 r16462  
    2828using HeuristicLab.Optimization;
    2929using HeuristicLab.Parameters;
    30 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     30using HEAL.Fossil;
    3131using HeuristicLab.PluginInfrastructure;
    3232
    3333namespace HeuristicLab.Encodings.IntegerVectorEncoding {
    3434  [Item("IntegerVectorEncoding", "Describes an integer vector encoding.")]
    35   [StorableClass]
     35  [StorableType("15D6E55E-C39F-4784-8350-14A0FD47CF0E")]
    3636  public sealed class IntegerVectorEncoding : Encoding<IIntegerVectorCreator> {
    3737    #region Encoding Parameters
     
    7878
    7979    [StorableConstructor]
    80     private IntegerVectorEncoding(bool deserializing) : base(deserializing) { }
     80    private IntegerVectorEncoding(StorableConstructorFlag _) : base(_) { }
    8181    [StorableHook(HookType.AfterDeserialization)]
    8282    private void AfterDeserialization() {
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/IntegerVectorManipulator.cs

    r16453 r16462  
    2424using HeuristicLab.Optimization;
    2525using HeuristicLab.Parameters;
    26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     26using HEAL.Fossil;
    2727
    2828namespace HeuristicLab.Encodings.IntegerVectorEncoding {
     
    3131  /// </summary>
    3232  [Item("IntegerVectorManipulator", "A base class for operators that manipulate int-valued vectors.")]
    33   [StorableClass]
     33  [StorableType("CE399EA5-7FAD-4070-A89D-A0FC3431B02D")]
    3434  public abstract class IntegerVectorManipulator : IntegerVectorOperator, IIntegerVectorManipulator, IStochasticOperator {
    3535    public override bool CanChangeName {
     
    4444
    4545    [StorableConstructor]
    46     protected IntegerVectorManipulator(bool deserializing) : base(deserializing) { }
     46    protected IntegerVectorManipulator(StorableConstructorFlag _) : base(_) { }
    4747    protected IntegerVectorManipulator(IntegerVectorManipulator original, Cloner cloner) : base(original, cloner) { }
    4848    protected IntegerVectorManipulator()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/IntegerVectorOperator.cs

    r16453 r16462  
    2424using HeuristicLab.Core;
    2525using HeuristicLab.Operators;
    26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     26using HEAL.Fossil;
    2727
    2828namespace HeuristicLab.Encodings.IntegerVectorEncoding {
    2929  [Item("IntegerVectorOperator", "Base class for integer vectoro operators.")]
    30   [StorableClass]
     30  [StorableType("6B380738-453C-4E60-B4AB-B3907BB5D9E2")]
    3131  public abstract class IntegerVectorOperator : InstrumentedOperator, IIntegerVectorOperator {
    3232
    3333    [StorableConstructor]
    34     protected IntegerVectorOperator(bool deserializing) : base(deserializing) { }
     34    protected IntegerVectorOperator(StorableConstructorFlag _) : base(_) { }
    3535    protected IntegerVectorOperator(IntegerVectorOperator original, Cloner cloner) : base(original, cloner) { }
    3636    public IntegerVectorOperator() : base() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Manipulators/RoundedNormalAllPositionsManipulator.cs

    r16453 r16462  
    2525using HeuristicLab.Data;
    2626using HeuristicLab.Parameters;
    27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     27using HEAL.Fossil;
    2828using HeuristicLab.Random;
    2929
     
    3434  /// </summary>
    3535  [Item("RoundedNormalAllPositionsManipulator", "This manipulation operator adds a value sigma_i * N_i(0,1) to the current value in each position i given the values for sigma_i in the parameter. The result is rounded to the next feasible value. If there are less elements in Sigma than positions, then Sigma is cycled.")]
    36   [StorableClass]
     36  [StorableType("CDAE115B-1BAD-4CC2-B63E-E3C45955175D")]
    3737  public class RoundedNormalAllPositionsManipulator : BoundedIntegerVectorManipulator {
    3838
     
    4242
    4343    [StorableConstructor]
    44     protected RoundedNormalAllPositionsManipulator(bool deserializing) : base(deserializing) { }
     44    protected RoundedNormalAllPositionsManipulator(StorableConstructorFlag _) : base(_) { }
    4545    protected RoundedNormalAllPositionsManipulator(RoundedNormalAllPositionsManipulator original, Cloner cloner) : base(original, cloner) { }
    4646    /// <summary>
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Manipulators/SelfAdaptiveRoundedNormalAllPositionsManipulator.cs

    r16453 r16462  
    2626using HeuristicLab.Optimization;
    2727using HeuristicLab.Parameters;
    28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HEAL.Fossil;
    2929using HeuristicLab.Random;
    3030
     
    3535  /// </summary>
    3636  [Item("SelfAdaptiveRoundedNormalAllPositionsManipulator", "This manipulation operator adds a value sigma_i * N(0,1) to the current value in each position i. The resulting value is rounded to the next feasible value. The values for sigma_i are looked up dynamically. If there are less elements in the strategy vector than positions, then the strategy vector is cycled.")]
    37   [StorableClass]
     37  [StorableType("2CD4AE6E-3A73-4514-AB66-4D94C700F779")]
    3838  public class SelfAdaptiveRoundedNormalAllPositionsManipulator : BoundedIntegerVectorManipulator, ISelfAdaptiveManipulator {
    3939    public Type StrategyParameterType {
     
    5252
    5353    [StorableConstructor]
    54     protected SelfAdaptiveRoundedNormalAllPositionsManipulator(bool deserializing) : base(deserializing) { }
     54    protected SelfAdaptiveRoundedNormalAllPositionsManipulator(StorableConstructorFlag _) : base(_) { }
    5555    protected SelfAdaptiveRoundedNormalAllPositionsManipulator(SelfAdaptiveRoundedNormalAllPositionsManipulator original, Cloner cloner) : base(original, cloner) { }
    5656    /// <summary>
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Manipulators/UniformOnePositionManipulator.cs

    r16453 r16462  
    2525using HeuristicLab.Data;
    2626using HeuristicLab.Parameters;
    27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     27using HEAL.Fossil;
    2828
    2929namespace HeuristicLab.Encodings.IntegerVectorEncoding {
     
    3535  /// </remarks>
    3636  [Item("UniformOnePositionManipulator", " Uniformly distributed change of a single position of an integer vector. It is implemented as described in Michalewicz, Z. 1999. Genetic Algorithms + Data Structures = Evolution Programs. Third, Revised and Extended Edition, Spring-Verlag Berlin Heidelberg.")]
    37   [StorableClass]
     37  [StorableType("205791F7-231F-4957-B27E-387161BF56F0")]
    3838  public class UniformOnePositionManipulator : BoundedIntegerVectorManipulator {
    3939
    4040    [StorableConstructor]
    41     protected UniformOnePositionManipulator(bool deserializing) : base(deserializing) { }
     41    protected UniformOnePositionManipulator(StorableConstructorFlag _) : base(_) { }
    4242    protected UniformOnePositionManipulator(UniformOnePositionManipulator original, Cloner cloner) : base(original, cloner) { }
    4343    /// <summary>
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Manipulators/UniformSomePositionsManipulator.cs

    r16453 r16462  
    2525using HeuristicLab.Data;
    2626using HeuristicLab.Parameters;
    27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     27using HEAL.Fossil;
    2828
    2929namespace HeuristicLab.Encodings.IntegerVectorEncoding {
     
    3535  /// </remarks>
    3636  [Item("UniformSomePositionsManipulator", "Uniformly distributed change of several, but at least one, positions of an integer vector. It is implemented as described in Michalewicz, Z. 1999. Genetic Algorithms + Data Structures = Evolution Programs. Third, Revised and Extended Edition, Spring-Verlag Berlin Heidelberg.")]
    37   [StorableClass]
     37  [StorableType("1A0F372D-7256-41EA-B825-9173BC1E278B")]
    3838  public class UniformSomePositionsManipulator : BoundedIntegerVectorManipulator {
    3939
     
    4343
    4444    [StorableConstructor]
    45     protected UniformSomePositionsManipulator(bool deserializing) : base(deserializing) { }
     45    protected UniformSomePositionsManipulator(StorableConstructorFlag _) : base(_) { }
    4646    protected UniformSomePositionsManipulator(UniformSomePositionsManipulator original, Cloner cloner) : base(original, cloner) { }
    4747    public UniformSomePositionsManipulator()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/ShakingOperators/IntegerVectorShakingOperator.cs

    r16453 r16462  
    2929using HeuristicLab.Optimization.Operators;
    3030using HeuristicLab.Parameters;
    31 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     31using HEAL.Fossil;
    3232using HeuristicLab.PluginInfrastructure;
    3333
     
    3737  /// </summary>
    3838  [Item("IntegerVectorShakingOperator", "A shaking operator for VNS which uses available manipulation operators to perform the shaking.")]
    39   [StorableClass]
     39  [StorableType("852155D8-B96F-4AAA-A9F9-5358F317C015")]
    4040  public class IntegerVectorShakingOperator : ShakingOperator<IIntegerVectorManipulator>, IIntegerVectorMultiNeighborhoodShakingOperator, IStochasticOperator, IBoundedIntegerVectorOperator {
    4141
     
    5353
    5454    [StorableConstructor]
    55     protected IntegerVectorShakingOperator(bool deserializing) : base(deserializing) { }
     55    protected IntegerVectorShakingOperator(StorableConstructorFlag _) : base(_) { }
    5656    protected IntegerVectorShakingOperator(IntegerVectorShakingOperator original, Cloner cloner) : base(original, cloner) { }
    5757    public override IDeepCloneable Clone(Cloner cloner) {
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/SimilarityCalculators/EuclideanSimilarityCalculator.cs

    r16453 r16462  
    2424using HeuristicLab.Core;
    2525using HeuristicLab.Optimization.Operators;
    26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     26using HEAL.Fossil;
    2727
    2828namespace HeuristicLab.Encodings.IntegerVectorEncoding {
    2929  [Item("Euclidean Similarity Calculator for IntegerVector", "Calculates the solution similarity based on the Euclidean distance and a transformation into (0;1] between two integer vectors.")]
    30   [StorableClass]
     30  [StorableType("479842EF-3426-4355-A064-7B235DC1D5E2")]
    3131  public sealed class EuclideanSimilarityCalculator : SingleObjectiveSolutionSimilarityCalculator {
    3232    protected override bool IsCommutative {
     
    4747
    4848    [StorableConstructor]
    49     private EuclideanSimilarityCalculator(bool deserializing) : base(deserializing) { }
     49    private EuclideanSimilarityCalculator(StorableConstructorFlag _) : base(_) { }
    5050    private EuclideanSimilarityCalculator(EuclideanSimilarityCalculator original, Cloner cloner)
    5151      : base(original, cloner) {
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/SimilarityCalculators/HammingSimilarityCalculator.cs

    r16453 r16462  
    2424using HeuristicLab.Core;
    2525using HeuristicLab.Optimization.Operators;
    26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     26using HEAL.Fossil;
    2727
    2828namespace HeuristicLab.Encodings.IntegerVectorEncoding {
    2929  [Item("Hamming Similarity Calculator for IntegerVector", "Calculates the solution similarity based on the Hamming distance between two integer vectors.")]
    30   [StorableClass]
     30  [StorableType("3784C4BD-8834-4A90-900C-0340C7F7BB47")]
    3131  public sealed class HammingSimilarityCalculator : SingleObjectiveSolutionSimilarityCalculator {
    3232    protected override bool IsCommutative {
     
    3535
    3636    [StorableConstructor]
    37     private HammingSimilarityCalculator(bool deserializing) : base(deserializing) { }
     37    private HammingSimilarityCalculator(StorableConstructorFlag _) : base(_) { }
    3838    private HammingSimilarityCalculator(HammingSimilarityCalculator original, Cloner cloner) : base(original, cloner) { }
    3939    public HammingSimilarityCalculator() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/StrategyParameters/StdDevStrategyVectorCreator.cs

    r16453 r16462  
    2626using HeuristicLab.Optimization;
    2727using HeuristicLab.Parameters;
    28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HEAL.Fossil;
    2929
    3030namespace HeuristicLab.Encodings.IntegerVectorEncoding {
    3131  [Item("StdDevStrategyVectorCreator", "Creates the endogeneous strategy parameters.")]
    32   [StorableClass]
     32  [StorableType("3357CE2D-EC8C-4DD7-B51A-FA72D558EA91")]
    3333  public class StdDevStrategyVectorCreator : SingleSuccessorOperator, IStochasticOperator, IIntegerVectorStdDevStrategyParameterCreator {
    3434    public override bool CanChangeName {
     
    4949
    5050    [StorableConstructor]
    51     protected StdDevStrategyVectorCreator(bool deserializing) : base(deserializing) { }
     51    protected StdDevStrategyVectorCreator(StorableConstructorFlag _) : base(_) { }
    5252    protected StdDevStrategyVectorCreator(StdDevStrategyVectorCreator original, Cloner cloner) : base(original, cloner) { }
    5353    public StdDevStrategyVectorCreator()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/StrategyParameters/StdDevStrategyVectorCrossover.cs

    r16453 r16462  
    2626using HeuristicLab.Optimization;
    2727using HeuristicLab.Parameters;
    28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HEAL.Fossil;
    2929
    3030namespace HeuristicLab.Encodings.IntegerVectorEncoding {
    3131  [Item("StdDevStrategyVectorCrossover", "Crosses the strategy vector by using intermediate recombination (average crossover).")]
    32   [StorableClass]
     32  [StorableType("27583F67-4C80-4059-B4F9-80587C0DFB13")]
    3333  public class StdDevStrategyVectorCrossover : SingleSuccessorOperator, IStochasticOperator, IIntegerVectorStdDevStrategyParameterCrossover {
    3434    public override bool CanChangeName {
     
    4646
    4747    [StorableConstructor]
    48     protected StdDevStrategyVectorCrossover(bool deserializing) : base(deserializing) { }
     48    protected StdDevStrategyVectorCrossover(StorableConstructorFlag _) : base(_) { }
    4949    protected StdDevStrategyVectorCrossover(StdDevStrategyVectorCrossover original, Cloner cloner) : base(original, cloner) { }
    5050    public StdDevStrategyVectorCrossover()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/StrategyParameters/StdDevStrategyVectorManipulator.cs

    r16453 r16462  
    2727using HeuristicLab.Optimization;
    2828using HeuristicLab.Parameters;
    29 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     29using HEAL.Fossil;
    3030using HeuristicLab.Random;
    3131
     
    3535  /// </summary>
    3636  [Item("StdDevStrategyVectorManipulator", "Mutates the endogenous strategy parameters.")]
    37   [StorableClass]
     37  [StorableType("8DEED222-E816-4B80-B3F9-0A799EC40C4E")]
    3838  public class StdDevStrategyVectorManipulator : SingleSuccessorOperator, IStochasticOperator, IIntegerVectorStdDevStrategyParameterManipulator {
    3939    public override bool CanChangeName {
     
    5757
    5858    [StorableConstructor]
    59     protected StdDevStrategyVectorManipulator(bool deserializing) : base(deserializing) { }
     59    protected StdDevStrategyVectorManipulator(StorableConstructorFlag _) : base(_) { }
    6060    protected StdDevStrategyVectorManipulator(StdDevStrategyVectorManipulator original, Cloner cloner) : base(original, cloner) { }
    6161    public StdDevStrategyVectorManipulator()
Note: See TracChangeset for help on using the changeset viewer.