Free cookie consent management tool by TermsFeed Policy Generator

source: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Decoders/ExtremePointsFunctions.cs @ 9593

Last change on this file since 9593 was 9495, checked in by jhelm, 12 years ago

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

File size: 2.2 KB
Line 
1using System;
2using System.Collections.Generic;
3using System.Linq;
4using System.Text;
5using HeuristicLab.Collections;
6using HeuristicLab.Core;
7using HeuristicLab.Encodings.IntegerVectorEncoding;
8using HeuristicLab.Encodings.PackingEncoding.GroupingVector;
9using HeuristicLab.Encodings.PackingEncoding.MultiComponentVector;
10using HeuristicLab.Encodings.PackingEncoding.PackingSequence;
11using HeuristicLab.Problems.BinPacking.Dimensions;
12using HeuristicLab.Problems.BinPacking.Interfaces;
13using HeuristicLab.Problems.BinPacking.PackingBin;
14using HeuristicLab.Problems.BinPacking.PackingItem;
15using HeuristicLab.Problems.BinPacking.Shapes;
16
17namespace HeuristicLab.Problems.BinPacking.Decoders {
18  public static class ExtremePointsFunctions<D,B,I>
19    where D : class, IPackingDimensions
20    where B : PackingShape<D>, IPackingBin, IRegularPackingShape
21      where I : PackingShape<D>, IPackingItem, IRegularPackingShape {
22
23
24    public static ObservableDictionary<int, D> ExtremePointBasedPacking(IItem solution, B binMeasures, ItemList<I> itemMeasures) {
25      var actualSolutionMCV = solution as MultiComponentVectorEncoding;
26      var actualSolutionGV = solution as GroupingVectorEncoding;   
27      var actualSolutionPS = solution as PackingSequenceEncoding;
28      if (actualSolutionMCV != null)
29        return ExtremePointBasedPacking(actualSolutionMCV, binMeasures, itemMeasures);
30      else if (actualSolutionGV != null)
31        return ExtremePointBasedPacking(actualSolutionGV, binMeasures, itemMeasures);
32      else  if (actualSolutionPS != null)
33        return ExtremePointBasedPacking(actualSolutionPS, binMeasures, itemMeasures);
34      else
35        return new ObservableDictionary<int,D>();
36    }
37
38    public static ObservableDictionary<int, D> ExtremePointBasedPacking(MultiComponentVectorEncoding solution, B binMeasures, ItemList<I> itemMeasures) {
39
40    }
41
42    public static ObservableDictionary<int, D> ExtremePointBasedPacking(GroupingVectorEncoding solution, B binMeasures, ItemList<I> itemMeasures) {
43
44    }
45
46    public static ObservableDictionary<int, D> ExtremePointBasedPacking(PackingSequenceEncoding solution, B binMeasures, ItemList<I> itemMeasures) {
47
48    }
49   
50  }
51}
Note: See TracBrowser for help on using the repository browser.