Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
11/06/10 01:56:04 (13 years ago)
Author:
swagner
Message:

Merged cloning refactoring branch back into trunk (#922)

Location:
trunk/sources
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources

  • trunk/sources/HeuristicLab.Encodings.BinaryVectorEncoding/3.3/Manipulators/SomePositionsBitflipManipulator.cs

    r4068 r4722  
    2020#endregion
    2121
     22using HeuristicLab.Common;
    2223using HeuristicLab.Core;
    2324using HeuristicLab.Data;
     
    3435  [Item("SomePositionsBitflipManipulator", "Flips some bits of a binary vector, each position is flipped with a probability of pm. It is implemented as described in Eiben, A.E. and Smith, J.E. 2003. Introduction to Evolutionary Computation. Natural Computing Series, Springer-Verlag Berlin Heidelberg, p. 43.")]
    3536  [StorableClass]
    36   public class SomePositionsBitflipManipulator : BinaryVectorManipulator {
     37  public sealed class SomePositionsBitflipManipulator : BinaryVectorManipulator {
    3738    /// <summary>
    3839    /// Mmutation probability for each position.
     
    4243    }
    4344
     45    [StorableConstructor]
     46    private SomePositionsBitflipManipulator(bool deserializing) : base(deserializing) { }
     47    private SomePositionsBitflipManipulator(SomePositionsBitflipManipulator original, Cloner cloner) : base(original, cloner) { }
    4448    /// <summary>
    4549    /// Initializes a new instance of <see cref="NPointCrossover"/>
    4650    /// </summary>
    47     public SomePositionsBitflipManipulator() {
     51    public SomePositionsBitflipManipulator()
     52      : base() {
    4853      Parameters.Add(new ValueLookupParameter<DoubleValue>("MutationProbability", "The mutation probability for each position", new DoubleValue(0.2)));
     54    }
     55
     56    public override IDeepCloneable Clone(Cloner cloner) {
     57      return new SomePositionsBitflipManipulator(this, cloner);
    4958    }
    5059
Note: See TracChangeset for help on using the changeset viewer.