Changeset 3340 for trunk/sources/HeuristicLab.Encodings.RealVectorEncoding/3.3/Moves/AdditiveMoveTabuMaker.cs
- Timestamp:
- 04/14/10 03:52:07 (14 years ago)
- File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Encodings.RealVectorEncoding/3.3/Moves/AdditiveMoveTabuMaker.cs
r3339 r3340 29 29 30 30 namespace HeuristicLab.Encodings.RealVectorEncoding { 31 [Item("Additive TabuMoveMaker", "Sets the move tabu.")]31 [Item("AdditiveMoveTabuMaker", "Sets the move tabu.")] 32 32 [StorableClass] 33 public class Additive TabuMoveMaker : TabuMaker, IAdditiveRealVectorMoveOperator {33 public class AdditiveMoveTabuMaker : TabuMaker, IAdditiveRealVectorMoveOperator { 34 34 public ILookupParameter<AdditiveMove> AdditiveMoveParameter { 35 35 get { return (ILookupParameter<AdditiveMove>)Parameters["AdditiveMove"]; } … … 39 39 } 40 40 41 public Additive TabuMoveMaker()41 public AdditiveMoveTabuMaker() 42 42 : base() { 43 43 Parameters.Add(new LookupParameter<AdditiveMove>("AdditiveMove", "The move to evaluate.")); … … 45 45 } 46 46 47 protected override IItem GetTabuAttribute( ) {47 protected override IItem GetTabuAttribute(bool maximization, double quality, double moveQuality) { 48 48 AdditiveMove move = AdditiveMoveParameter.ActualValue; 49 49 RealVector vector = RealVectorParameter.ActualValue; 50 return new AdditiveMoveTabuAttribute(move.Dimension, vector[move.Dimension], vector[move.Dimension] + move.MoveDistance); 50 double baseQuality = moveQuality; 51 if (maximization && quality > moveQuality || !maximization && quality < moveQuality) baseQuality = quality; 52 return new AdditiveMoveTabuAttribute(move.Dimension, vector[move.Dimension], vector[move.Dimension] + move.MoveDistance, baseQuality); 51 53 } 52 54
Note: See TracChangeset
for help on using the changeset viewer.