Changeset 16462 for branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers
- Timestamp:
- 12/28/18 16:10:48 (6 years ago)
- Location:
- branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/DiscreteCrossover.cs
r16453 r16462 23 23 using HeuristicLab.Common; 24 24 using HeuristicLab.Core; 25 using H euristicLab.Persistence.Default.CompositeSerializers.Storable;25 using HEAL.Fossil; 26 26 27 27 namespace HeuristicLab.Encodings.IntegerVectorEncoding { … … 33 33 /// </remarks> 34 34 [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 [Storable Class]35 [StorableType("64C79AA5-1D77-4CF4-A19B-9646F270E4D8")] 36 36 public class DiscreteCrossover : IntegerVectorCrossover { 37 37 [StorableConstructor] 38 protected DiscreteCrossover( bool deserializing) : base(deserializing) { }38 protected DiscreteCrossover(StorableConstructorFlag _) : base(_) { } 39 39 protected DiscreteCrossover(DiscreteCrossover original, Cloner cloner) : base(original, cloner) { } 40 40 public DiscreteCrossover() : base() { } -
branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/MultiIntegerVectorCrossover.cs
r16453 r16462 29 29 using HeuristicLab.Optimization; 30 30 using HeuristicLab.Parameters; 31 using H euristicLab.Persistence.Default.CompositeSerializers.Storable;31 using HEAL.Fossil; 32 32 using HeuristicLab.PluginInfrastructure; 33 33 34 34 namespace HeuristicLab.Encodings.IntegerVectorEncoding { 35 35 [Item("MultiIntegerVectorCrossover", "Randomly selects and applies one of its crossovers every time it is called.")] 36 [Storable Class]36 [StorableType("EC482D88-4258-48D3-BCD2-C6FC013C8FED")] 37 37 public class MultiIntegerVectorCrossover : StochasticMultiBranch<IIntegerVectorCrossover>, IIntegerVectorCrossover, IStochasticOperator, IBoundedIntegerVectorOperator { 38 38 public override bool CanChangeName { … … 56 56 57 57 [StorableConstructor] 58 protected MultiIntegerVectorCrossover( bool deserializing) : base(deserializing) { }58 protected MultiIntegerVectorCrossover(StorableConstructorFlag _) : base(_) { } 59 59 protected MultiIntegerVectorCrossover(MultiIntegerVectorCrossover original, Cloner cloner) : base(original, cloner) { } 60 60 public MultiIntegerVectorCrossover() -
branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/RoundedAverageCrossover.cs
r16453 r16462 24 24 using HeuristicLab.Core; 25 25 using HeuristicLab.Data; 26 using H euristicLab.Persistence.Default.CompositeSerializers.Storable;26 using HEAL.Fossil; 27 27 28 28 namespace HeuristicLab.Encodings.IntegerVectorEncoding { … … 31 31 /// </summary> 32 32 [Item("RoundedAverageCrossover", "Average crossover for integer vectors.")] 33 [Storable Class]33 [StorableType("6899DA13-4004-4E22-99B5-46FE6E3418FA")] 34 34 public class RoundedAverageCrossover : BoundedIntegerVectorCrossover, IBoundedIntegerVectorOperator { 35 35 36 36 [StorableConstructor] 37 protected RoundedAverageCrossover( bool deserializing) : base(deserializing) { }37 protected RoundedAverageCrossover(StorableConstructorFlag _) : base(_) { } 38 38 protected RoundedAverageCrossover(RoundedAverageCrossover original, Cloner cloner) : base(original, cloner) { } 39 39 public RoundedAverageCrossover() : base() { } -
branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/RoundedBlendAlphaBetaCrossover.cs
r16453 r16462 26 26 using HeuristicLab.Optimization; 27 27 using HeuristicLab.Parameters; 28 using H euristicLab.Persistence.Default.CompositeSerializers.Storable;28 using HEAL.Fossil; 29 29 30 30 namespace HeuristicLab.Encodings.IntegerVectorEncoding { … … 37 37 /// </summary> 38 38 [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 [Storable Class]39 [StorableType("E9786DA1-C713-44EA-AD2A-BBE371712BA2")] 40 40 public class RoundedBlendAlphaBetaCrossover : BoundedIntegerVectorCrossover, ISingleObjectiveOperator { 41 41 /// <summary> … … 65 65 66 66 [StorableConstructor] 67 protected RoundedBlendAlphaBetaCrossover( bool deserializing) : base(deserializing) { }67 protected RoundedBlendAlphaBetaCrossover(StorableConstructorFlag _) : base(_) { } 68 68 protected RoundedBlendAlphaBetaCrossover(RoundedBlendAlphaBetaCrossover original, Cloner cloner) : base(original, cloner) { } 69 69 /// <summary> -
branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/RoundedBlendAlphaCrossover.cs
r16453 r16462 25 25 using HeuristicLab.Data; 26 26 using HeuristicLab.Parameters; 27 using H euristicLab.Persistence.Default.CompositeSerializers.Storable;27 using HEAL.Fossil; 28 28 29 29 namespace HeuristicLab.Encodings.IntegerVectorEncoding { … … 34 34 /// </summary> 35 35 [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 [Storable Class]36 [StorableType("F371B342-7D0C-4ED9-8F3F-A641E82DC8F1")] 37 37 public class RoundedBlendAlphaCrossover : BoundedIntegerVectorCrossover { 38 38 /// <summary> … … 47 47 48 48 [StorableConstructor] 49 protected RoundedBlendAlphaCrossover( bool deserializing) : base(deserializing) { }49 protected RoundedBlendAlphaCrossover(StorableConstructorFlag _) : base(_) { } 50 50 protected RoundedBlendAlphaCrossover(RoundedBlendAlphaCrossover original, Cloner cloner) : base(original, cloner) { } 51 51 /// <summary> -
branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/RoundedHeuristicCrossover.cs
r16453 r16462 26 26 using HeuristicLab.Optimization; 27 27 using HeuristicLab.Parameters; 28 using H euristicLab.Persistence.Default.CompositeSerializers.Storable;28 using HEAL.Fossil; 29 29 30 30 namespace HeuristicLab.Encodings.IntegerVectorEncoding { … … 35 35 /// </summary> 36 36 [Item("RoundedHeuristicCrossover", "The heuristic crossover produces offspring that extend the better parent in direction from the worse to the better parent.")] 37 [Storable Class]37 [StorableType("94963FD3-4092-4B76-88E0-5FE5AC2DA9E2")] 38 38 public class RoundedHeuristicCrossover : BoundedIntegerVectorCrossover, ISingleObjectiveOperator { 39 39 /// <summary> … … 51 51 52 52 [StorableConstructor] 53 protected RoundedHeuristicCrossover( bool deserializing) : base(deserializing) { }53 protected RoundedHeuristicCrossover(StorableConstructorFlag _) : base(_) { } 54 54 protected RoundedHeuristicCrossover(RoundedHeuristicCrossover original, Cloner cloner) : base(original, cloner) { } 55 55 /// <summary> -
branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/RoundedLocalCrossover.cs
r16453 r16462 24 24 using HeuristicLab.Core; 25 25 using HeuristicLab.Data; 26 using H euristicLab.Persistence.Default.CompositeSerializers.Storable;26 using HEAL.Fossil; 27 27 28 28 namespace HeuristicLab.Encodings.IntegerVectorEncoding { … … 32 32 /// </remarks> 33 33 [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 [Storable Class]34 [StorableType("2E21F322-85CD-4B67-AF9C-4119FAABB3C1")] 35 35 public class RoundedLocalCrossover : BoundedIntegerVectorCrossover { 36 36 [StorableConstructor] 37 protected RoundedLocalCrossover( bool deserializing) : base(deserializing) { }37 protected RoundedLocalCrossover(StorableConstructorFlag _) : base(_) { } 38 38 protected RoundedLocalCrossover(RoundedLocalCrossover original, Cloner cloner) : base(original, cloner) { } 39 39 public RoundedLocalCrossover() : base() { } -
branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/RoundedUniformArithmeticCrossover.cs
r16453 r16462 25 25 using HeuristicLab.Data; 26 26 using HeuristicLab.Parameters; 27 using H euristicLab.Persistence.Default.CompositeSerializers.Storable;27 using HEAL.Fossil; 28 28 29 29 namespace HeuristicLab.Encodings.IntegerVectorEncoding { … … 32 32 /// </summary> 33 33 [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 [Storable Class]34 [StorableType("8393AFC2-FAA5-47A8-A1E3-E6DEABE71B2F")] 35 35 public class RoundedUniformArithmeticCrossover : BoundedIntegerVectorCrossover, IBoundedIntegerVectorOperator { 36 36 … … 49 49 50 50 [StorableConstructor] 51 protected RoundedUniformArithmeticCrossover( bool deserializing) : base(deserializing) { }51 protected RoundedUniformArithmeticCrossover(StorableConstructorFlag _) : base(_) { } 52 52 protected RoundedUniformArithmeticCrossover(RoundedUniformArithmeticCrossover original, Cloner cloner) : base(original, cloner) { } 53 53 /// <summary> -
branches/2520_PersistenceReintegration/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Crossovers/SinglePointCrossover.cs
r16453 r16462 23 23 using HeuristicLab.Common; 24 24 using HeuristicLab.Core; 25 using H euristicLab.Persistence.Default.CompositeSerializers.Storable;25 using HEAL.Fossil; 26 26 27 27 namespace HeuristicLab.Encodings.IntegerVectorEncoding { … … 33 33 /// </remarks> 34 34 [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 [Storable Class]35 [StorableType("0B985803-CC2D-466B-B5F2-9A1F7C415735")] 36 36 public class SinglePointCrossover : IntegerVectorCrossover { 37 37 [StorableConstructor] 38 protected SinglePointCrossover( bool deserializing) : base(deserializing) { }38 protected SinglePointCrossover(StorableConstructorFlag _) : base(_) { } 39 39 protected SinglePointCrossover(SinglePointCrossover original, Cloner cloner) : base(original, cloner) { } 40 40 public SinglePointCrossover() : base() { }
Note: See TracChangeset
for help on using the changeset viewer.