Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
05/15/13 22:23:36 (12 years ago)
Author:
jhelm
Message:

#1966: Did some major refactoring in Decoder-classes; Added MoveEvaluator classes for different encodings and dimensions; Added new crossover-class for MCV encoding;

Location:
branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Problem
Files:
1 added
3 edited

Legend:

Unmodified
Added
Removed
  • branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Problem/CuboidIdenticalBinPackingProblem.cs

    r9473 r9495  
    4444using HeuristicLab.Problems.Instances;
    4545using HeuristicLab.Encodings.PackingEncoding.MultiComponentVector;
    46 using HeuristicLab.Encodings.PackingEncoding.Potvin;
    4746
    4847namespace HeuristicLab.Problems.BinPacking.Problem {
     
    120119    #region Helpers
    121120    protected override void InitializeDecoder() {
     121      Operators.RemoveAll(op => typeof(I2DOperator).IsAssignableFrom(op.GetType()));
     122
    122123      if (SolutionCreator is PackingSequenceRandomCreator) {
    123124        PackingSolutionDecoder = new ExtremePointPackingSequenceDecoder3D();
     
    126127      } else if (SolutionCreator is MultiComponentVectorRandomCreator) {
    127128        PackingSolutionDecoder = new ExtremePointMultiComponentVectorDecoder3D();
    128       } else if (SolutionCreator is PotvinRandomCreator) {
    129         PackingSolutionDecoder = new ExtremePointPotvinDecoder3D();
    130129      } else {
    131130        string error = "The given problem does not support the selected solution-creator.";
  • branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Problem/RectangularIdenticalBinPackingProblem.cs

    r9440 r9495  
    114114    #region Helpers
    115115    protected override void InitializeDecoder() {
     116      Operators.RemoveAll(op => typeof(I3DOperator).IsAssignableFrom(op.GetType()));
     117
    116118      if (SolutionCreator is PackingSequenceRandomCreator) {
    117119        PackingSolutionDecoder = new ExtremePointPackingSequenceDecoder2D();
  • branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Problem/RegularIdenticalBinPackingProblem.cs

    r9473 r9495  
    4343using HeuristicLab.Problems.Instances;
    4444using HeuristicLab.Encodings.PackingEncoding.MultiComponentVector;
    45 using HeuristicLab.Encodings.PackingEncoding.Potvin;
    4645
    4746namespace HeuristicLab.Problems.BinPacking.Problem {
     
    6766      set { PackingBinMeasuresParameter.Value = value; }
    6867    }
    69     public IdenticalBinPackingSolutionDecoder<D,B,I, PackingPlan<D,B,I>> PackingSolutionDecoder {
    70       get { return PackingSolutionDecoderParameter.Value as IdenticalBinPackingSolutionDecoder<D, B, I, PackingPlan<D, B, I>>; }
     68    public PackingSolutionDecoder<D,B,I> PackingSolutionDecoder {
     69      get { return PackingSolutionDecoderParameter.Value as PackingSolutionDecoder<D, B, I>; }
    7170      set { PackingSolutionDecoderParameter.Value = value; }
    7271    }
     
    139138        Operators.AddRange(ApplicationManager.Manager.GetInstances<IMultiComponentVectorOperator>());
    140139        InitializeDecoder();
    141       } else if (SolutionCreator.GetType() == typeof(PotvinRandomCreator)) {
    142         Operators.AddRange(ApplicationManager.Manager.GetInstances<IPotvinOperator>());
    143         InitializeDecoder();
    144140      }
    145141    }
Note: See TracChangeset for help on using the changeset viewer.