Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
12/28/18 16:10:48 (5 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.LinearLinkageEncoding/3.4
Files:
40 edited

Legend:

Unmodified
Added
Removed
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Creators/ExactGroupsLinearLinkageCreator.cs

    r16453 r16462  
    2626using HeuristicLab.Data;
    2727using HeuristicLab.Parameters;
    28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HEAL.Fossil;
    2929using HeuristicLab.Random;
    3030
    3131namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3232  [Item("Exactgroups Linear Linkage Creator", "Creates a random linear linkage LLE encoded solution with a given number of equal-sized groups.")]
    33   [StorableClass]
     33  [StorableType("ACF7F729-9436-4418-86C4-45BF69F91803")]
    3434  public sealed class ExactGroupsLinearLinkageCreator : LinearLinkageCreator {
    3535
     
    4444
    4545    [StorableConstructor]
    46     private ExactGroupsLinearLinkageCreator(bool deserializing) : base(deserializing) { }
     46    private ExactGroupsLinearLinkageCreator(StorableConstructorFlag _) : base(_) { }
    4747    private ExactGroupsLinearLinkageCreator(ExactGroupsLinearLinkageCreator original, Cloner cloner) : base(original, cloner) { }
    4848
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Creators/MaxGroupSizeLinearLinkageCreator.cs

    r14479 r16462  
    1 using System;
    2 using System.Collections.Generic;
    3 using System.Linq;
     1using System.Linq;
    42using HeuristicLab.Common;
    53using HeuristicLab.Core;
    64using HeuristicLab.Data;
    75using HeuristicLab.Parameters;
    8 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     6using HEAL.Fossil;
    97
    108namespace HeuristicLab.Encodings.LinearLinkageEncoding.Creators {
    119  [Item("Max Group-size Linear Linkage Creator", "Creates a random linear linkage LLE encoded solution with a given maximum number of items per group.")]
    12   [StorableClass]
     10  [StorableType("5C9DEA79-60CC-44A5-B70E-FC11A588C307")]
    1311  public class MaxGroupSizeLinearLinkageCreator: LinearLinkageCreator {
    1412
     
    2321
    2422    [StorableConstructor]
    25     protected MaxGroupSizeLinearLinkageCreator(bool deserializing) : base(deserializing) { }
     23    protected MaxGroupSizeLinearLinkageCreator(StorableConstructorFlag _) : base(_) { }
    2624    protected MaxGroupSizeLinearLinkageCreator(MaxGroupSizeLinearLinkageCreator original, Cloner cloner) : base(original, cloner) { }
    2725
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Creators/MaxGroupsLinearLinkageCreator.cs

    r16453 r16462  
    2626using HeuristicLab.Data;
    2727using HeuristicLab.Parameters;
    28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HEAL.Fossil;
    2929
    3030namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3131  [Item("Maxgroups Linear Linkage Creator", "Creates a random linear linkage LLE encoded solution with a given maximum number of groups.")]
    32   [StorableClass]
     32  [StorableType("68BA2FF2-2493-404C-B044-D50AAC401CF1")]
    3333  public sealed class MaxGroupsLinearLinkageCreator : LinearLinkageCreator {
    3434
     
    4343
    4444    [StorableConstructor]
    45     private MaxGroupsLinearLinkageCreator(bool deserializing) : base(deserializing) { }
     45    private MaxGroupsLinearLinkageCreator(StorableConstructorFlag _) : base(_) { }
    4646    private MaxGroupsLinearLinkageCreator(MaxGroupsLinearLinkageCreator original, Cloner cloner) : base(original, cloner) { }
    4747
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Creators/RandomLinearLinkageCreator.cs

    r16453 r16462  
    2424using HeuristicLab.Common;
    2525using HeuristicLab.Core;
    26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     26using HEAL.Fossil;
    2727
    2828namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    2929  [Item("Random Linear Linkage Creator", "Creates a random linear linkage LLE encoded solution (similar to MaxGroups set to N).")]
    30   [StorableClass]
     30  [StorableType("A2B2881B-BFB6-4902-BE59-DBF26E27B498")]
    3131  public sealed class RandomLinearLinkageCreator : LinearLinkageCreator {
    3232
    3333    [StorableConstructor]
    34     private RandomLinearLinkageCreator(bool deserializing) : base(deserializing) { }
     34    private RandomLinearLinkageCreator(StorableConstructorFlag _) : base(_) { }
    3535    private RandomLinearLinkageCreator(RandomLinearLinkageCreator original, Cloner cloner) : base(original, cloner) { }
    3636    public RandomLinearLinkageCreator() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Crossovers/GreedyPartitionCrossover.cs

    r16453 r16462  
    2525using HeuristicLab.Common;
    2626using HeuristicLab.Core;
    27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     27using HEAL.Fossil;
    2828using HeuristicLab.Random;
    2929
    3030namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3131  [Item("Greedy Partition Crossover", "The Greedy Partition Crossover (GPX) is implemented as described in Ülker, Ö., Özcan, E., Korkmaz, E. E. 2007. Linear linkage encoding in grouping problems: applications on graph coloring and timetabling. In Practice and Theory of Automated Timetabling VI, pp. 347-363. Springer Berlin Heidelberg.")]
    32   [StorableClass]
     32  [StorableType("C0CDC693-4513-404A-9CE9-598C6DC2E319")]
    3333  public sealed class GreedyPartitionCrossover : LinearLinkageCrossover {
    3434
    3535    [StorableConstructor]
    36     private GreedyPartitionCrossover(bool deserializing) : base(deserializing) { }
     36    private GreedyPartitionCrossover(StorableConstructorFlag _) : base(_) { }
    3737    private GreedyPartitionCrossover(GreedyPartitionCrossover original, Cloner cloner) : base(original, cloner) { }
    3838    public GreedyPartitionCrossover() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Crossovers/GroupCrossover.cs

    r16453 r16462  
    2121
    2222using System;
    23 using System.Collections.Generic;
    2423using HeuristicLab.Common;
    2524using HeuristicLab.Core;
    26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     25using HEAL.Fossil;
    2726
    2827namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    2928  [Item("Group Crossover", "The Group Crossover is implemented as described in Korkmaz, E.E. 2010. Multi-objective Genetic Algorithms for grouping problems. Applied Intelligence 33(2), pp. 179-192.")]
    30   [StorableClass]
     29  [StorableType("E3B2FBDD-C923-4FE2-85C8-B2202EEF367F")]
    3130  public sealed class GroupCrossover : LinearLinkageCrossover {
    3231
    3332    [StorableConstructor]
    34     private GroupCrossover(bool deserializing) : base(deserializing) { }
     33    private GroupCrossover(StorableConstructorFlag _) : base(_) { }
    3534    private GroupCrossover(GroupCrossover original, Cloner cloner) : base(original, cloner) { }
    3635    public GroupCrossover() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Crossovers/LowestIndexFirstCrossover.cs

    r16453 r16462  
    2424using HeuristicLab.Common;
    2525using HeuristicLab.Core;
    26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     26using HEAL.Fossil;
    2727
    2828namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    2929  [Item("Lowest Index First Crossover", "The Lowest Index First Crossover (LIFX) is implemented as described in Ülker, Ö., Özcan, E., Korkmaz, E. E. 2007. Linear linkage encoding in grouping problems: applications on graph coloring and timetabling. In Practice and Theory of Automated Timetabling VI, pp. 347-363. Springer Berlin Heidelberg.")]
    30   [StorableClass]
     30  [StorableType("1DFB1827-AFE6-4210-A542-F9EA112FF039")]
    3131  public sealed class LowestIndexFirstCrossover : LinearLinkageCrossover {
    3232
    3333    [StorableConstructor]
    34     private LowestIndexFirstCrossover(bool deserializing) : base(deserializing) { }
     34    private LowestIndexFirstCrossover(StorableConstructorFlag _) : base(_) { }
    3535    private LowestIndexFirstCrossover(LowestIndexFirstCrossover original, Cloner cloner) : base(original, cloner) { }
    3636    public LowestIndexFirstCrossover() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Crossovers/LowestIndexMaxCrossover.cs

    r16453 r16462  
    2525using HeuristicLab.Common;
    2626using HeuristicLab.Core;
    27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     27using HEAL.Fossil;
    2828using HeuristicLab.Random;
    2929
    3030namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3131  [Item("Lowest Index Max Crossover", "The Lowest Index Max Crossover (LIMX) is implemented as described in Ülker, Ö., Özcan, E., Korkmaz, E. E. 2007. Linear linkage encoding in grouping problems: applications on graph coloring and timetabling. In Practice and Theory of Automated Timetabling VI, pp. 347-363. Springer Berlin Heidelberg.")]
    32   [StorableClass]
     32  [StorableType("CDD94469-9B80-4FBB-AC40-DADE1A9462F1")]
    3333  public sealed class LowestIndexMaxCrossover : LinearLinkageCrossover {
    3434
    3535    [StorableConstructor]
    36     private LowestIndexMaxCrossover(bool deserializing) : base(deserializing) { }
     36    private LowestIndexMaxCrossover(StorableConstructorFlag _) : base(_) { }
    3737    private LowestIndexMaxCrossover(LowestIndexMaxCrossover original, Cloner cloner) : base(original, cloner) { }
    3838    public LowestIndexMaxCrossover() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Crossovers/MultiLLECrossover.cs

    r16453 r16462  
    2323using System.Collections.Generic;
    2424using System.Linq;
    25 using System.Reflection;
    2625using HeuristicLab.Collections;
    2726using HeuristicLab.Common;
     
    3029using HeuristicLab.Optimization;
    3130using HeuristicLab.Parameters;
    32 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     31using HEAL.Fossil;
    3332using HeuristicLab.PluginInfrastructure;
    3433
    3534namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3635  [Item("Multi LLE Crossover", "Randomly selects and applies one of its crossovers every time it is called.")]
    37   [StorableClass]
     36  [StorableType("276A73EA-3642-4B8F-9CD4-74C1B2772728")]
    3837  public class MultiLinearLinkageCrossover : StochasticMultiBranch<ILinearLinkageCrossover>, ILinearLinkageCrossover, IStochasticOperator {
    3938    public override bool CanChangeName {
     
    5352
    5453    [StorableConstructor]
    55     protected MultiLinearLinkageCrossover(bool deserializing) : base(deserializing) { }
     54    protected MultiLinearLinkageCrossover(StorableConstructorFlag _) : base(_) { }
    5655    protected MultiLinearLinkageCrossover(MultiLinearLinkageCrossover original, Cloner cloner) : base(original, cloner) { }
    5756    public MultiLinearLinkageCrossover()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/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.LinearLinkageEncoding {
    2828  [Item("Single Point Crossover", "The single point crossover concatenates two linkage strings at a randomly chosen point.")]
    29   [StorableClass]
     29  [StorableType("1F1A83F4-659C-4A88-9A0C-4507257A3741")]
    3030  public sealed class SinglePointCrossover : LinearLinkageCrossover {
    3131
    3232    [StorableConstructor]
    33     private SinglePointCrossover(bool deserializing) : base(deserializing) { }
     33    private SinglePointCrossover(StorableConstructorFlag _) : base(_) { }
    3434    private SinglePointCrossover(SinglePointCrossover original, Cloner cloner) : base(original, cloner) { }
    3535    public SinglePointCrossover() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/HeuristicLab.Encodings.LinearLinkageEncoding-3.4.csproj

    r16454 r16462  
    148148      <HintPath>..\..\packages\Google.Protobuf.3.6.1\lib\net45\Google.Protobuf.dll</HintPath>
    149149    </Reference>
    150     <Reference Include="HEAL.Fossil, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
     150    <Reference Include="HEAL.Fossil, Version=1.0.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
    151151      <HintPath>..\..\packages\HEAL.Fossil.1.0.0\lib\netstandard2.0\HEAL.Fossil.dll</HintPath>
    152152    </Reference>
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/LinearLinkage.cs

    r16453 r16462  
    2626using HeuristicLab.Core;
    2727using HeuristicLab.Data;
    28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HEAL.Fossil;
    2929
    3030namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3131  [Item("LinearLinkage", "Represents an LLE grouping of items.")]
    32   [StorableClass]
     32  [StorableType("91492281-3335-4F5A-82BA-BA76142DAD2D")]
    3333  public sealed class LinearLinkage : IntArray {
    3434
    3535    [StorableConstructor]
    36     private LinearLinkage(bool deserializing) : base(deserializing) { }
     36    private LinearLinkage(StorableConstructorFlag _) : base(_) { }
    3737    private LinearLinkage(LinearLinkage original, Cloner cloner) : base(original, cloner) { }
    3838    public LinearLinkage() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/LinearLinkageCreator.cs

    r16453 r16462  
    2626using HeuristicLab.Optimization;
    2727using HeuristicLab.Parameters;
    28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HEAL.Fossil;
    2929
    3030namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3131  [Item("Linear Linkage Creator", "Base class for linear linkage creators.")]
    32   [StorableClass]
     32  [StorableType("A3F7BDD5-B608-4C74-87C1-6D70F8D90B40")]
    3333  public abstract class LinearLinkageCreator : InstrumentedOperator, ILinearLinkageCreator, IStochasticOperator {
    3434
     
    4646
    4747    [StorableConstructor]
    48     protected LinearLinkageCreator(bool deserializing) : base(deserializing) { }
     48    protected LinearLinkageCreator(StorableConstructorFlag _) : base(_) { }
    4949    protected LinearLinkageCreator(LinearLinkageCreator original, Cloner cloner) : base(original, cloner) { }
    5050    protected LinearLinkageCreator() {
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/LinearLinkageCrossover.cs

    r16453 r16462  
    2626using HeuristicLab.Optimization;
    2727using HeuristicLab.Parameters;
    28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HEAL.Fossil;
    2929
    3030namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3131  [Item("Linear Linkage Crossover", "Base class for linear linkage crossovers.")]
    32   [StorableClass]
     32  [StorableType("AB45F937-ECD4-4658-BC9E-793EE0453A0C")]
    3333  public abstract class LinearLinkageCrossover : InstrumentedOperator, ILinearLinkageCrossover, IStochasticOperator {
    3434
     
    4646
    4747    [StorableConstructor]
    48     protected LinearLinkageCrossover(bool deserializing) : base(deserializing) { }
     48    protected LinearLinkageCrossover(StorableConstructorFlag _) : base(_) { }
    4949    protected LinearLinkageCrossover(LinearLinkageCrossover original, Cloner cloner) : base(original, cloner) { }
    5050    protected LinearLinkageCrossover() {
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/LinearLinkageEncoding.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.LinearLinkageEncoding {
    3434  [Item("Linear Linkage Encoding", "Describes a linear linkage (LLE) encoding.")]
    35   [StorableClass]
     35  [StorableType("7AE11F39-E6BD-4FC7-8112-0A5EDCBFBDB6")]
    3636  public sealed class LinearLinkageEncoding : Encoding<ILinearLinkageCreator> {
    3737    #region encoding parameters
     
    5959
    6060    [StorableConstructor]
    61     private LinearLinkageEncoding(bool deserializing) : base(deserializing) { }
     61    private LinearLinkageEncoding(StorableConstructorFlag _) : base(_) { }
    6262    [StorableHook(HookType.AfterDeserialization)]
    6363    private void AfterDeserialization() {
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/LinearLinkageManipulator.cs

    r16453 r16462  
    2525using HeuristicLab.Optimization;
    2626using HeuristicLab.Parameters;
    27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     27using HEAL.Fossil;
    2828
    2929namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3030  [Item("Linear Linkage Manipulator", "Base class for linear linkage manipulators.")]
    31   [StorableClass]
     31  [StorableType("88C99692-985F-4AB6-8E4F-1416E9166959")]
    3232  public abstract class LinearLinkageManipulator : InstrumentedOperator, ILinearLinkageManipulator, IStochasticOperator {
    3333    public ILookupParameter<IRandom> RandomParameter {
     
    4040
    4141    [StorableConstructor]
    42     protected LinearLinkageManipulator(bool deserializing) : base(deserializing) { }
     42    protected LinearLinkageManipulator(StorableConstructorFlag _) : base(_) { }
    4343    protected LinearLinkageManipulator(LinearLinkageManipulator original, Cloner cloner) : base(original, cloner) { }
    4444    protected LinearLinkageManipulator() {
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Manipulators/GraftManipulator.cs

    r16453 r16462  
    2424using HeuristicLab.Common;
    2525using HeuristicLab.Core;
    26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     26using HEAL.Fossil;
    2727
    2828namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    2929  [Item("Graft Manipulator", "Performs graft mutation as described in Du, J., Korkmaz, E.E., Alhajj, R., and Barker, K. 2004. Novel Clustering Approach that employs Genetic Algorithm with New Representation Scheme and Multiple Objectives. Data Warehousing and Knowledge Discovery, pp. 219-228. Springer Berlin Heidelberg.")]
    30   [StorableClass]
     30  [StorableType("B4806B37-B641-4750-B41F-FF5614156038")]
    3131  public sealed class GraftManipulator : LinearLinkageManipulator {
    3232
    3333    [StorableConstructor]
    34     private GraftManipulator(bool deserializing) : base(deserializing) { }
     34    private GraftManipulator(StorableConstructorFlag _) : base(_) { }
    3535    private GraftManipulator(GraftManipulator original, Cloner cloner) : base(original, cloner) { }
    3636    public GraftManipulator() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Manipulators/MergeGroupManipulator.cs

    r16453 r16462  
    2525using HeuristicLab.Data;
    2626using HeuristicLab.Parameters;
    27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     27using HEAL.Fossil;
    2828
    2929namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3030  [Item("Merge Group Manipulator", "Performs a maximum of N merge operations on the groups. An already merged group may be merged again.")]
    31   [StorableClass]
     31  [StorableType("FE35BB56-D2B9-4309-ABF4-8C366D8596BC")]
    3232  public sealed class MergeGroupManipulator : LinearLinkageManipulator {
    3333
     
    3737
    3838    [StorableConstructor]
    39     private MergeGroupManipulator(bool deserializing) : base(deserializing) { }
     39    private MergeGroupManipulator(StorableConstructorFlag _) : base(_) { }
    4040    private MergeGroupManipulator(MergeGroupManipulator original, Cloner cloner) : base(original, cloner) { }
    4141    public MergeGroupManipulator() {
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Manipulators/MoveItemManipulator.cs

    r16453 r16462  
    2626using HeuristicLab.Data;
    2727using HeuristicLab.Parameters;
    28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HEAL.Fossil;
    2929
    3030namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3131  [Item("Move Item Manipulator", "Performs a maximum of N move operations between groups or to new groups. An already moved item may be moved again.")]
    32   [StorableClass]
     32  [StorableType("26B371F4-8E37-406A-AC5A-3E7734087890")]
    3333  public sealed class MoveItemManipulator : LinearLinkageManipulator {
    3434
     
    3838
    3939    [StorableConstructor]
    40     private MoveItemManipulator(bool deserializing) : base(deserializing) { }
     40    private MoveItemManipulator(StorableConstructorFlag _) : base(_) { }
    4141    private MoveItemManipulator(MoveItemManipulator original, Cloner cloner) : base(original, cloner) { }
    4242    public MoveItemManipulator() {
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Manipulators/MultiLLEManipulator.cs

    r16453 r16462  
    2323using System.Collections.Generic;
    2424using System.Linq;
    25 using System.Reflection;
    2625using HeuristicLab.Collections;
    2726using HeuristicLab.Common;
     
    3029using HeuristicLab.Optimization;
    3130using HeuristicLab.Parameters;
    32 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     31using HEAL.Fossil;
    3332using HeuristicLab.PluginInfrastructure;
    3433
    3534namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3635  [Item("Multi LLE Manipulator", "Randomly selects and applies one of its manipulators every time it is called.")]
    37   [StorableClass]
     36  [StorableType("7D22C9F6-BD21-4A21-BF8E-5F176D2260E1")]
    3837  public class MultiLinearLinkageManipulator : StochasticMultiBranch<ILinearLinkageManipulator>, ILinearLinkageManipulator, IStochasticOperator {
    3938    public override bool CanChangeName {
     
    4948
    5049    [StorableConstructor]
    51     protected MultiLinearLinkageManipulator(bool deserializing) : base(deserializing) { }
     50    protected MultiLinearLinkageManipulator(StorableConstructorFlag _) : base(_) { }
    5251    protected MultiLinearLinkageManipulator(MultiLinearLinkageManipulator original, Cloner cloner) : base(original, cloner) { }
    5352    public MultiLinearLinkageManipulator()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Manipulators/SplitGroupManipulator.cs

    r16453 r16462  
    2727using HeuristicLab.Data;
    2828using HeuristicLab.Parameters;
    29 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     29using HEAL.Fossil;
    3030using HeuristicLab.Random;
    3131
    3232namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3333  [Item("Split Group Manipulator", "Performs a maximum of N split operations on the groups. An already split group may be split again.")]
    34   [StorableClass]
     34  [StorableType("789781B8-0047-4880-ACAF-077A934AD320")]
    3535  public sealed class SplitGroupManipulator : LinearLinkageManipulator {
    3636
     
    4040
    4141    [StorableConstructor]
    42     private SplitGroupManipulator(bool deserializing) : base(deserializing) { }
     42    private SplitGroupManipulator(StorableConstructorFlag _) : base(_) { }
    4343    private SplitGroupManipulator(SplitGroupManipulator original, Cloner cloner) : base(original, cloner) { }
    4444    public SplitGroupManipulator() {
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Manipulators/SwapItemManipulator.cs

    r16453 r16462  
    2525using HeuristicLab.Data;
    2626using HeuristicLab.Parameters;
    27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     27using HEAL.Fossil;
    2828
    2929namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3030  [Item("Swap Item Manipulator", "Performs N swaps operations of two items each. The same items may be swapped multiple times, at least two groups need to be present.")]
    31   [StorableClass]
     31  [StorableType("21F18233-0752-40A2-8B9A-6E6A9E2CE456")]
    3232  public sealed class SwapItemManipulator : LinearLinkageManipulator {
    3333
     
    3737
    3838    [StorableConstructor]
    39     private SwapItemManipulator(bool deserializing) : base(deserializing) { }
     39    private SwapItemManipulator(StorableConstructorFlag _) : base(_) { }
    4040    private SwapItemManipulator(SwapItemManipulator original, Cloner cloner) : base(original, cloner) { }
    4141    public SwapItemManipulator() {
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Moves/EMSS/EMSSMove.cs

    r16453 r16462  
    2222using HeuristicLab.Common;
    2323using HeuristicLab.Core;
    24 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     24using HEAL.Fossil;
    2525
    2626namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    2727  [Item("EMSSMove", "Base class for shift, split, merge, and extract moves.")]
    28   [StorableClass]
     28  [StorableType("CE20CA9A-A191-4DA5-9F42-DAE9B79640E1")]
    2929  public abstract class EMSSMove : Item {
    3030    [Storable]
     
    3333
    3434    [StorableConstructor]
    35     protected EMSSMove(bool deserializing) : base(deserializing) { }
     35    protected EMSSMove(StorableConstructorFlag _) : base(_) { }
    3636    protected EMSSMove(EMSSMove original, Cloner cloner)
    3737      : base(original, cloner) {
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Moves/EMSS/EMSSMoveGenerator.cs

    r16453 r16462  
    2525using HeuristicLab.Optimization;
    2626using HeuristicLab.Parameters;
    27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     27using HEAL.Fossil;
    2828
    2929namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3030  [Item("EMSSMoveGenerator", "Base class for all EMSS move generators (extract, merge, shift, and split).")]
    31   [StorableClass]
     31  [StorableType("471A0A7B-30DD-4B29-97EE-9B3F7FAED582")]
    3232  public abstract class EMSSMoveGenerator : SingleSuccessorOperator, ILinearLinkageEMSSMoveOperator, IMoveGenerator {
    3333    public override bool CanChangeName {
     
    4242
    4343    [StorableConstructor]
    44     protected EMSSMoveGenerator(bool deserializing) : base(deserializing) { }
     44    protected EMSSMoveGenerator(StorableConstructorFlag _) : base(_) { }
    4545    protected EMSSMoveGenerator(EMSSMoveGenerator original, Cloner cloner) : base(original, cloner) { }
    4646    public EMSSMoveGenerator()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Moves/EMSS/EMSSMoveMaker.cs

    r16453 r16462  
    2626using HeuristicLab.Optimization;
    2727using HeuristicLab.Parameters;
    28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HEAL.Fossil;
    2929
    3030namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3131  [Item("EMSSMoveMaker", "Applies an EMSS move to the lle grouping (extract, merge, shift, and split.")]
    32   [StorableClass]
     32  [StorableType("B252F8AE-AEEA-4A21-8882-04739D4D2202")]
    3333  public class EMSSMoveMaker : SingleSuccessorOperator, ILinearLinkageEMSSMoveOperator, IMoveMaker, ISingleObjectiveOperator {
    3434    public override bool CanChangeName {
     
    4949
    5050    [StorableConstructor]
    51     protected EMSSMoveMaker(bool deserializing) : base(deserializing) { }
     51    protected EMSSMoveMaker(StorableConstructorFlag _) : base(_) { }
    5252    protected EMSSMoveMaker(EMSSMoveMaker original, Cloner cloner) : base(original, cloner) { }
    5353    public EMSSMoveMaker()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Moves/EMSS/ExhaustiveEMSSMoveGenerator.cs

    r16453 r16462  
    2626using HeuristicLab.Core;
    2727using HeuristicLab.Optimization;
    28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HEAL.Fossil;
    2929
    3030namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3131  [Item("ExhaustiveEMSSMoveGenerator", "Generates all possible extract, merge, shift, and split (EMSS) moves from a given LLE solution.")]
    32   [StorableClass]
     32  [StorableType("E5E81516-ADD2-474D-A93F-00580D485F07")]
    3333  public class ExhaustiveEMSSMoveGenerator : EMSSMoveGenerator, IExhaustiveMoveGenerator {
    3434    [StorableConstructor]
    35     protected ExhaustiveEMSSMoveGenerator(bool deserializing) : base(deserializing) { }
     35    protected ExhaustiveEMSSMoveGenerator(StorableConstructorFlag _) : base(_) { }
    3636    protected ExhaustiveEMSSMoveGenerator(ExhaustiveEMSSMoveGenerator original, Cloner cloner) : base(original, cloner) { }
    3737    public ExhaustiveEMSSMoveGenerator() : base() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Moves/EMSS/ExtractMove.cs

    r16453 r16462  
    2323using HeuristicLab.Common;
    2424using HeuristicLab.Core;
    25 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     25using HEAL.Fossil;
    2626
    2727namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    2828  [Item("Extract Move", "Extracts an item into a group of its own.")]
    29   [StorableClass]
     29  [StorableType("D42CB819-F307-4081-9227-7F6786E6853B")]
    3030  public sealed class ExtractMove : EMSSMove {
    3131    [Storable]
     
    4141
    4242    [StorableConstructor]
    43     private ExtractMove(bool deserializing) : base(deserializing) { }
     43    private ExtractMove(StorableConstructorFlag _) : base(_) { }
    4444    private ExtractMove(ExtractMove original, Cloner cloner)
    4545      : base(original, cloner) {
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Moves/EMSS/MergeMove.cs

    r16453 r16462  
    2323using HeuristicLab.Common;
    2424using HeuristicLab.Core;
    25 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     25using HEAL.Fossil;
    2626
    2727namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    2828  [Item("Merge Move", "Merges two groups together.")]
    29   [StorableClass]
     29  [StorableType("4AC9ADD2-3825-4CFE-8074-6F3CA7251700")]
    3030  public sealed class MergeMove : EMSSMove {
    3131    [Storable]
     
    3434   
    3535    [StorableConstructor]
    36     private MergeMove(bool deserializing) : base(deserializing) { }
     36    private MergeMove(StorableConstructorFlag _) : base(_) { }
    3737    private MergeMove(MergeMove original, Cloner cloner)
    3838      : base(original, cloner) {
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Moves/EMSS/ShiftMove.cs

    r16453 r16462  
    2323using HeuristicLab.Common;
    2424using HeuristicLab.Core;
    25 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     25using HEAL.Fossil;
    2626
    2727namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    2828  [Item("Shift Move", "Shifts an item from one group to another.")]
    29   [StorableClass]
     29  [StorableType("577C4FAF-A02C-4896-8EEB-54360989A4B3")]
    3030  public sealed class ShiftMove : EMSSMove {
    3131    [Storable]
     
    4747
    4848    [StorableConstructor]
    49     private ShiftMove(bool deserializing) : base(deserializing) { }
     49    private ShiftMove(StorableConstructorFlag _) : base(_) { }
    5050    private ShiftMove(ShiftMove original, Cloner cloner)
    5151      : base(original, cloner) {
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Moves/EMSS/SplitMove.cs

    r16453 r16462  
    2323using HeuristicLab.Common;
    2424using HeuristicLab.Core;
    25 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     25using HEAL.Fossil;
    2626
    2727namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    2828  [Item("Split Move", "Splits a group into two groups.")]
    29   [StorableClass]
     29  [StorableType("98EB5FF6-A384-482B-B700-7EB012639E64")]
    3030  public sealed class SplitMove : EMSSMove {
    3131    [Storable]
     
    3333
    3434    [StorableConstructor]
    35     private SplitMove(bool deserializing) : base(deserializing) { }
     35    private SplitMove(StorableConstructorFlag _) : base(_) { }
    3636    private SplitMove(SplitMove original, Cloner cloner)
    3737      : base(original, cloner) {
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Moves/EMSS/StochasticEMSSMultiMoveGenerator.cs

    r16453 r16462  
    2727using HeuristicLab.Optimization;
    2828using HeuristicLab.Parameters;
    29 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     29using HEAL.Fossil;
    3030using HeuristicLab.Random;
    3131
    3232namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3333  [Item("StochasticEMSSMultiMoveGenerator", "Randomly samples n from all possible EMSS moves (extract, merge, shift, and split) from a given lle grouping.")]
    34   [StorableClass]
     34  [StorableType("AE38F823-B840-4AFB-A780-259CB6C95D23")]
    3535  public class StochasticEMSSMultiMoveGenerator : EMSSMoveGenerator, IMultiMoveGenerator, IStochasticOperator {
    3636    public ILookupParameter<IRandom> RandomParameter {
     
    4747
    4848    [StorableConstructor]
    49     protected StochasticEMSSMultiMoveGenerator(bool deserializing) : base(deserializing) { }
     49    protected StochasticEMSSMultiMoveGenerator(StorableConstructorFlag _) : base(_) { }
    5050    protected StochasticEMSSMultiMoveGenerator(StochasticEMSSMultiMoveGenerator original, Cloner cloner) : base(original, cloner) { }
    5151    public StochasticEMSSMultiMoveGenerator()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Moves/EMSS/StochasticEMSSSingleMoveGenerator.cs

    r16453 r16462  
    2626using HeuristicLab.Optimization;
    2727using HeuristicLab.Parameters;
    28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HEAL.Fossil;
    2929using HeuristicLab.Random;
    3030
    3131namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3232  [Item("StochasticEMSSSingleMoveGenerator", "Randomly samples a single from all possible EMSS moves (extract, merge, shift, and split) from a given lle grouping.")]
    33   [StorableClass]
     33  [StorableType("345211F0-E998-4C0E-B466-C2FC24D278E4")]
    3434  public class StochasticEMSSSingleMoveGenerator : EMSSMoveGenerator, IStochasticOperator, ISingleMoveGenerator {
    3535    public ILookupParameter<IRandom> RandomParameter {
     
    3838
    3939    [StorableConstructor]
    40     protected StochasticEMSSSingleMoveGenerator(bool deserializing) : base(deserializing) { }
     40    protected StochasticEMSSSingleMoveGenerator(StorableConstructorFlag _) : base(_) { }
    4141    protected StochasticEMSSSingleMoveGenerator(StochasticEMSSSingleMoveGenerator original, Cloner cloner) : base(original, cloner) { }
    4242    public StochasticEMSSSingleMoveGenerator()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Moves/Swap/ExhaustiveSwap2MoveGenerator.cs

    r16453 r16462  
    2626using HeuristicLab.Core;
    2727using HeuristicLab.Optimization;
    28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HEAL.Fossil;
    2929
    3030namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3131  [Item("ExhaustiveSwap2MoveGenerator", "Generates all possible swap-2 moves from a given lle grouping.")]
    32   [StorableClass]
     32  [StorableType("1D050D36-3197-4931-9806-F8119A60E8B6")]
    3333  public class ExhaustiveSwap2MoveGenerator : Swap2MoveGenerator, IExhaustiveMoveGenerator {
    3434    [StorableConstructor]
    35     protected ExhaustiveSwap2MoveGenerator(bool deserializing) : base(deserializing) { }
     35    protected ExhaustiveSwap2MoveGenerator(StorableConstructorFlag _) : base(_) { }
    3636    protected ExhaustiveSwap2MoveGenerator(ExhaustiveSwap2MoveGenerator original, Cloner cloner) : base(original, cloner) { }
    3737    public ExhaustiveSwap2MoveGenerator() : base() { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Moves/Swap/StochasticSwap2MultiMoveGenerator.cs

    r16453 r16462  
    2525using HeuristicLab.Optimization;
    2626using HeuristicLab.Parameters;
    27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     27using HEAL.Fossil;
    2828
    2929namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3030  [Item("StochasticSwap2MultiMoveGenerator", "Randomly samples n from all possible swap-2 moves from a given lle grouping.")]
    31   [StorableClass]
     31  [StorableType("156E5EAE-D929-41CE-844E-7DECE09CB74B")]
    3232  public class StochasticSwap2MultiMoveGenerator : Swap2MoveGenerator, IMultiMoveGenerator, IStochasticOperator {
    3333    public ILookupParameter<IRandom> RandomParameter {
     
    4444
    4545    [StorableConstructor]
    46     protected StochasticSwap2MultiMoveGenerator(bool deserializing) : base(deserializing) { }
     46    protected StochasticSwap2MultiMoveGenerator(StorableConstructorFlag _) : base(_) { }
    4747    protected StochasticSwap2MultiMoveGenerator(StochasticSwap2MultiMoveGenerator original, Cloner cloner) : base(original, cloner) { }
    4848    public StochasticSwap2MultiMoveGenerator()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Moves/Swap/StochasticSwap2SingleMoveGenerator.cs

    r16453 r16462  
    2626using HeuristicLab.Optimization;
    2727using HeuristicLab.Parameters;
    28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HEAL.Fossil;
    2929
    3030namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3131  [Item("StochasticSwap2SingleMoveGenerator", "Randomly samples a single from all possible swap-2 moves from a given lle grouping.")]
    32   [StorableClass]
     32  [StorableType("381C1F6F-A61C-4886-A2A1-348445DF2C84")]
    3333  public class StochasticSwap2SingleMoveGenerator : Swap2MoveGenerator, IStochasticOperator, ISingleMoveGenerator {
    3434    public ILookupParameter<IRandom> RandomParameter {
     
    3737
    3838    [StorableConstructor]
    39     protected StochasticSwap2SingleMoveGenerator(bool deserializing) : base(deserializing) { }
     39    protected StochasticSwap2SingleMoveGenerator(StorableConstructorFlag _) : base(_) { }
    4040    protected StochasticSwap2SingleMoveGenerator(StochasticSwap2SingleMoveGenerator original, Cloner cloner) : base(original, cloner) { }
    4141    public StochasticSwap2SingleMoveGenerator()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Moves/Swap/Swap2Move.cs

    r16453 r16462  
    2222using HeuristicLab.Common;
    2323using HeuristicLab.Core;
    24 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     24using HEAL.Fossil;
    2525
    2626namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    2727  [Item("Swap2Move", "Item that describes a swap-2 move.")]
    28   [StorableClass]
     28  [StorableType("AEB203A4-03AD-4F86-B200-B0FA8253BCFF")]
    2929  public class Swap2Move : Item {
    3030    [Storable]
     
    3636
    3737    [StorableConstructor]
    38     protected Swap2Move(bool deserializing) : base(deserializing) { }
     38    protected Swap2Move(StorableConstructorFlag _) : base(_) { }
    3939    protected Swap2Move(Swap2Move original, Cloner cloner) : base(original, cloner) { }
    4040    public Swap2Move() : this(-1, -1, null) { }
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Moves/Swap/Swap2MoveGenerator.cs

    r16453 r16462  
    2525using HeuristicLab.Optimization;
    2626using HeuristicLab.Parameters;
    27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     27using HEAL.Fossil;
    2828
    2929namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3030  [Item("Swap2MoveGenerator", "Base class for all swap-2 move generators.")]
    31   [StorableClass]
     31  [StorableType("E7319AAA-7D34-444A-9B63-8A5CF1F010B5")]
    3232  public abstract class Swap2MoveGenerator : SingleSuccessorOperator, ILinearLinkageSwap2MoveOperator, IMoveGenerator {
    3333    public override bool CanChangeName {
     
    4242
    4343    [StorableConstructor]
    44     protected Swap2MoveGenerator(bool deserializing) : base(deserializing) { }
     44    protected Swap2MoveGenerator(StorableConstructorFlag _) : base(_) { }
    4545    protected Swap2MoveGenerator(Swap2MoveGenerator original, Cloner cloner) : base(original, cloner) { }
    4646    public Swap2MoveGenerator()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/Moves/Swap/Swap2MoveMaker.cs

    r16453 r16462  
    2828using HeuristicLab.Optimization;
    2929using HeuristicLab.Parameters;
    30 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     30using HEAL.Fossil;
    3131
    3232namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3333  [Item("Swap2MoveMaker", "Peforms a swap-2 move on a given grouping and updates the quality.")]
    34   [StorableClass]
     34  [StorableType("2A1F7169-5DD5-4FB6-A25C-BBC4C06BB15A")]
    3535  public class Swap2MoveMaker : SingleSuccessorOperator, ILinearLinkageSwap2MoveOperator, IMoveMaker, ISingleObjectiveOperator {
    3636    public override bool CanChangeName {
     
    5151
    5252    [StorableConstructor]
    53     protected Swap2MoveMaker(bool deserializing) : base(deserializing) { }
     53    protected Swap2MoveMaker(StorableConstructorFlag _) : base(_) { }
    5454    protected Swap2MoveMaker(Swap2MoveMaker original, Cloner cloner) : base(original, cloner) { }
    5555    public Swap2MoveMaker()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/ShakingOperators/LLEShakingOperator.cs

    r16453 r16462  
    2828using HeuristicLab.Optimization.Operators;
    2929using HeuristicLab.Parameters;
    30 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     30using HEAL.Fossil;
    3131
    3232namespace HeuristicLab.Encodings.LinearLinkageEncoding {
    3333  [Item("LLE Shaking Operator", "A shaking operator for VNS which uses LLE manipulators to perform the shaking.")]
    34   [StorableClass]
     34  [StorableType("D08F5FA0-BEAC-4AAE-A69A-7EFEC26513BA")]
    3535  public class LLEShakingOperator : ShakingOperator<ILinearLinkageManipulator>, IStochasticOperator, ILinearLinkageShakingOperator {
    3636
     
    4848
    4949    [StorableConstructor]
    50     protected LLEShakingOperator(bool deserializing) : base(deserializing) { }
     50    protected LLEShakingOperator(StorableConstructorFlag _) : base(_) { }
    5151    protected LLEShakingOperator(LLEShakingOperator original, Cloner cloner) : base(original, cloner) { }
    5252    public LLEShakingOperator()
  • branches/2520_PersistenceReintegration/HeuristicLab.Encodings.LinearLinkageEncoding/3.4/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.LinearLinkageEncoding {
    2929  [Item("Hamming Similarity Calculator for LinearLinkage", "Calculates the hamming similarity for two linear linkage encoded solutions.")]
    30   [StorableClass]
     30  [StorableType("285EA71B-6045-4431-9B64-77331D23CE3C")]
    3131  public sealed class HammingSimilarityCalculator : SingleObjectiveSolutionSimilarityCalculator {
    3232    protected override bool IsCommutative { get { return true; } }
    3333
    3434    [StorableConstructor]
    35     private HammingSimilarityCalculator(bool deserializing) : base(deserializing) { }
     35    private HammingSimilarityCalculator(StorableConstructorFlag _) : base(_) { }
    3636    private HammingSimilarityCalculator(HammingSimilarityCalculator original, Cloner cloner) : base(original, cloner) { }
    3737    public HammingSimilarityCalculator() : base() { }
Note: See TracChangeset for help on using the changeset viewer.