Changeset 4722 for trunk/sources/HeuristicLab.Encodings.BinaryVectorEncoding/3.3/Moves/OneBitflipMove
- Timestamp:
- 11/06/10 01:56:04 (14 years ago)
- Location:
- trunk/sources
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources
- Property svn:mergeinfo changed
/branches/CloningRefactoring (added) merged: 4656-4693,4696-4697,4711-4714,4718-4719
- Property svn:mergeinfo changed
-
trunk/sources/HeuristicLab.Encodings.BinaryVectorEncoding/3.3/Moves/OneBitflipMove/ExhaustiveOneBitflipMoveGenerator.cs
r4068 r4722 20 20 #endregion 21 21 22 using HeuristicLab.Common; 22 23 using HeuristicLab.Core; 23 24 using HeuristicLab.Optimization; … … 27 28 [Item("ExhaustiveBitflipMoveGenerator", "Generates all possible one bitflip moves from a given binaryVector.")] 28 29 [StorableClass] 29 public class ExhaustiveOneBitflipMoveGenerator : OneBitflipMoveGenerator, IExhaustiveMoveGenerator { 30 public sealed class ExhaustiveOneBitflipMoveGenerator : OneBitflipMoveGenerator, IExhaustiveMoveGenerator { 31 [StorableConstructor] 32 private ExhaustiveOneBitflipMoveGenerator(bool deserializing) : base(deserializing) { } 33 private ExhaustiveOneBitflipMoveGenerator(ExhaustiveOneBitflipMoveGenerator original, Cloner cloner) : base(original, cloner) { } 34 public ExhaustiveOneBitflipMoveGenerator() : base() { } 35 36 public override IDeepCloneable Clone(Cloner cloner) { 37 return new ExhaustiveOneBitflipMoveGenerator(this, cloner); 38 } 39 30 40 public static OneBitflipMove[] Apply(BinaryVector binaryVector) { 31 41 int length = binaryVector.Length; -
trunk/sources/HeuristicLab.Encodings.BinaryVectorEncoding/3.3/Moves/OneBitflipMove/OneBitflipMove.cs
r4068 r4722 20 20 #endregion 21 21 22 using HeuristicLab.Common; 22 23 using HeuristicLab.Core; 23 24 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; … … 27 28 [StorableClass] 28 29 public class OneBitflipMove : OneIndexMove { 29 public OneBitflipMove() 30 : base() { 31 } 30 [StorableConstructor] 31 protected OneBitflipMove(bool deserializing) : base(deserializing) { } 32 protected OneBitflipMove(OneBitflipMove original, Cloner cloner) : base(original, cloner) { } 33 public OneBitflipMove() : base() { } 34 public OneBitflipMove(int index) : this(index, null) { } 35 public OneBitflipMove(int index, BinaryVector binaryVector) : base(index, binaryVector) { } 32 36 33 public OneBitflipMove(int index) 34 : base(index, null) { 35 } 36 37 public OneBitflipMove(int index, BinaryVector binaryVector) 38 : base(index, binaryVector) { 37 public override IDeepCloneable Clone(Cloner cloner) { 38 return new OneBitflipMove(this, cloner); 39 39 } 40 40 } -
trunk/sources/HeuristicLab.Encodings.BinaryVectorEncoding/3.3/Moves/OneBitflipMove/OneBitflipMoveAttribute.cs
r3376 r4722 25 25 26 26 namespace HeuristicLab.Encodings.BinaryVectorEncoding { 27 [Item("OneBitflipMoveAttribute", " Base class for specifying a move attribute.")]27 [Item("OneBitflipMoveAttribute", "Describes the attributes (move quality and index) of a single bitflip move.")] 28 28 [StorableClass] 29 29 public class OneBitflipMoveAttribute : Item { … … 33 33 public int Index { get; protected set; } 34 34 35 public OneBitflipMoveAttribute() 36 : this(-1, 0) { 35 [StorableConstructor] 36 protected OneBitflipMoveAttribute(bool deserializing) : base(deserializing) { } 37 protected OneBitflipMoveAttribute(OneBitflipMoveAttribute original, Cloner cloner) 38 : base(original, cloner) { 39 this.MoveQuality = original.MoveQuality; 40 this.Index = original.Index; 37 41 } 38 42 public OneBitflipMoveAttribute() : this(-1, 0) { } 39 43 public OneBitflipMoveAttribute(int index, double moveQuality) 40 44 : base() { … … 44 48 45 49 public override IDeepCloneable Clone(Cloner cloner) { 46 OneBitflipMoveAttribute clone = (OneBitflipMoveAttribute)base.Clone(cloner); 47 clone.MoveQuality = MoveQuality; 48 clone.Index = Index; 49 return clone; 50 return new OneBitflipMoveAttribute(this, cloner); 50 51 } 51 52 } -
trunk/sources/HeuristicLab.Encodings.BinaryVectorEncoding/3.3/Moves/OneBitflipMove/OneBitflipMoveGenerator.cs
r4068 r4722 20 20 #endregion 21 21 22 using HeuristicLab.Common; 22 23 using HeuristicLab.Core; 23 24 using HeuristicLab.Operators; … … 43 44 } 44 45 46 [StorableConstructor] 47 protected OneBitflipMoveGenerator(bool deserializing) : base(deserializing) { } 48 protected OneBitflipMoveGenerator(OneBitflipMoveGenerator original, Cloner cloner) : base(original, cloner) { } 45 49 public OneBitflipMoveGenerator() 46 50 : base() { -
trunk/sources/HeuristicLab.Encodings.BinaryVectorEncoding/3.3/Moves/OneBitflipMove/OneBitflipMoveMaker.cs
r4068 r4722 20 20 #endregion 21 21 22 using HeuristicLab.Common; 22 23 using HeuristicLab.Core; 23 24 using HeuristicLab.Data; … … 47 48 } 48 49 50 [StorableConstructor] 51 protected OneBitflipMoveMaker(bool deserializing) : base(deserializing) { } 52 protected OneBitflipMoveMaker(OneBitflipMoveMaker original, Cloner cloner) : base(original, cloner) { } 49 53 public OneBitflipMoveMaker() 50 54 : base() { … … 53 57 Parameters.Add(new LookupParameter<OneBitflipMove>("OneBitflipMove", "The move to evaluate.")); 54 58 Parameters.Add(new LookupParameter<BinaryVector>("BinaryVector", "The solution as BinaryVector.")); 59 } 60 61 public override IDeepCloneable Clone(Cloner cloner) { 62 return new OneBitflipMoveMaker(this, cloner); 55 63 } 56 64 -
trunk/sources/HeuristicLab.Encodings.BinaryVectorEncoding/3.3/Moves/OneBitflipMove/OneBitflipMoveTabuChecker.cs
r4068 r4722 20 20 #endregion 21 21 22 using HeuristicLab.Common; 22 23 using HeuristicLab.Core; 23 24 using HeuristicLab.Data; … … 61 62 } 62 63 64 [StorableConstructor] 65 protected OneBitflipMoveTabuChecker(bool deserializing) : base(deserializing) { } 66 protected OneBitflipMoveTabuChecker(OneBitflipMoveTabuChecker original, Cloner cloner) : base(original, cloner) { } 63 67 public OneBitflipMoveTabuChecker() 64 68 : base() { … … 70 74 Parameters.Add(new ValueLookupParameter<BoolValue>("Maximization", "True if the problem is a maximization problem, else if it is a minimization problem.")); 71 75 Parameters.Add(new LookupParameter<DoubleValue>("MoveQuality", "The quality of the current move.")); 76 } 77 78 public override IDeepCloneable Clone(Cloner cloner) { 79 return new OneBitflipMoveTabuChecker(this, cloner); 72 80 } 73 81 -
trunk/sources/HeuristicLab.Encodings.BinaryVectorEncoding/3.3/Moves/OneBitflipMove/OneBitflipMoveTabuMaker.cs
r4068 r4722 20 20 #endregion 21 21 22 using HeuristicLab.Common; 22 23 using HeuristicLab.Core; 23 24 using HeuristicLab.Optimization.Operators; … … 36 37 } 37 38 39 [StorableConstructor] 40 protected OneBitflipMoveTabuMaker(bool deserializing) : base(deserializing) { } 41 protected OneBitflipMoveTabuMaker(OneBitflipMoveTabuMaker original, Cloner cloner) : base(original, cloner) { } 38 42 public OneBitflipMoveTabuMaker() 39 43 : base() { 40 44 Parameters.Add(new LookupParameter<BinaryVector>("BinaryVector", "The solution as BinaryVector.")); 41 45 Parameters.Add(new LookupParameter<OneBitflipMove>("OneBitflipMove", "The move that was made.")); 46 } 47 48 public override IDeepCloneable Clone(Cloner cloner) { 49 return new OneBitflipMoveTabuMaker(this, cloner); 42 50 } 43 51 -
trunk/sources/HeuristicLab.Encodings.BinaryVectorEncoding/3.3/Moves/OneBitflipMove/StochasticOneBitflipMultiMoveGenerator.cs
r4068 r4722 20 20 #endregion 21 21 22 using HeuristicLab.Common; 22 23 using HeuristicLab.Core; 23 24 using HeuristicLab.Data; … … 42 43 } 43 44 45 [StorableConstructor] 46 protected StochasticOneBitflipMultiMoveGenerator(bool deserializing) : base(deserializing) { } 47 protected StochasticOneBitflipMultiMoveGenerator(StochasticOneBitflipMultiMoveGenerator original, Cloner cloner) : base(original, cloner) { } 44 48 public StochasticOneBitflipMultiMoveGenerator() 45 49 : base() { 46 50 Parameters.Add(new LookupParameter<IRandom>("Random", "The random number generator.")); 47 51 Parameters.Add(new ValueLookupParameter<IntValue>("SampleSize", "The number of moves to generate.")); 52 } 53 54 public override IDeepCloneable Clone(Cloner cloner) { 55 return new StochasticOneBitflipMultiMoveGenerator(this, cloner); 48 56 } 49 57 -
trunk/sources/HeuristicLab.Encodings.BinaryVectorEncoding/3.3/Moves/OneBitflipMove/StochasticOneBitflipSingleMoveGenerator.cs
r4068 r4722 20 20 #endregion 21 21 22 using HeuristicLab.Common; 22 23 using HeuristicLab.Core; 23 24 using HeuristicLab.Optimization; … … 33 34 } 34 35 36 [StorableConstructor] 37 protected StochasticOneBitflipSingleMoveGenerator(bool deserializing) : base(deserializing) { } 38 protected StochasticOneBitflipSingleMoveGenerator(StochasticOneBitflipSingleMoveGenerator original, Cloner cloner) : base(original, cloner) { } 35 39 public StochasticOneBitflipSingleMoveGenerator() 36 40 : base() { 37 41 Parameters.Add(new LookupParameter<IRandom>("Random", "The random number generator.")); 42 } 43 44 public override IDeepCloneable Clone(Cloner cloner) { 45 return new StochasticOneBitflipSingleMoveGenerator(this, cloner); 38 46 } 39 47
Note: See TracChangeset
for help on using the changeset viewer.