Changeset 14046 for branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Encodings/PackingSequence/Moves/SequenceTabuMaker.cs
- Timestamp:
- 07/12/16 19:34:31 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Encodings/PackingSequence/Moves/SequenceTabuMaker.cs
r13032 r14046 26 26 using HeuristicLab.Parameters; 27 27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 28 using HeuristicLab.Problems.BinPacking .Interfaces;28 using HeuristicLab.Problems.BinPacking; 29 29 30 30 namespace HeuristicLab.Encodings.PackingEncoding.PackingSequence { 31 31 [Item("Sequence tabu maker", "Declares a given Sequence move as tabu, by adding its attributes to the tabu list and also store the solution quality or the move quality (whichever is better).")] 32 32 [StorableClass] 33 public class SequenceTabuMaker : TabuMaker, IPackingSequenceMoveOperator {33 public class SequenceTabuMaker : TabuMaker, IPackingSequenceMoveOperator { 34 34 public ILookupParameter<IPackingMove> PackingMoveParameter { 35 35 get { return (ILookupParameter<IPackingMove>)Parameters["PackingMove"]; } … … 44 44 public SequenceTabuMaker() 45 45 : base() { 46 46 Parameters.Add(new LookupParameter<IPackingMove>("PackingMove", "The move to evaluate.")); 47 47 Parameters.Add(new LookupParameter<PackingSequenceEncoding>("PackingSequence", "The solution to evaluate.")); 48 48 } … … 54 54 protected override IItem GetTabuAttribute(bool maximization, double quality, double moveQuality) { 55 55 IPackingMove move = PackingMoveParameter.ActualValue; 56 PackingSequenceEncoding PackingSequence = PackingSequenceParameter.ActualValue; 56 PackingSequenceEncoding PackingSequence = PackingSequenceParameter.ActualValue; 57 57 double baseQuality = moveQuality; 58 if (maximization && quality > moveQuality || !maximization && quality < moveQuality) 58 if (maximization && quality > moveQuality || !maximization && quality < moveQuality) 59 59 baseQuality = quality; // we make an uphill move, the lower bound is the solution quality 60 60
Note: See TracChangeset
for help on using the changeset viewer.