Changeset 13486


Ignore:
Timestamp:
12/21/15 21:07:12 (5 years ago)
Author:
abeham
Message:

#2221: merged r13484 to stable

Location:
stable
Files:
13 edited
9 copied

Legend:

Unmodified
Added
Removed
  • stable

  • stable/HeuristicLab 3.3.sln

    r13294 r13486  
    22Microsoft Visual Studio Solution File, Format Version 12.00
    33# Visual Studio 2013
    4 VisualStudioVersion = 12.0.31101.0
     4VisualStudioVersion = 12.0.40629.0
    55MinimumVisualStudioVersion = 10.0.40219.1
    66Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{96396439-A764-4022-A8D2-BE021449B8D1}"
     
    2424    {25087811-F74C-4128-BC86-8324271DA13E} = {25087811-F74C-4128-BC86-8324271DA13E}
    2525    {5AC82412-911B-4FA2-A013-EDC5E3F3FCC2} = {5AC82412-911B-4FA2-A013-EDC5E3F3FCC2}
     26    {90B6CA12-9791-4430-B2D7-CD3ED7F75E2B} = {90B6CA12-9791-4430-B2D7-CD3ED7F75E2B}
    2627    {662B4B15-8F4D-4AE5-B3EB-D91C215F5AF2} = {662B4B15-8F4D-4AE5-B3EB-D91C215F5AF2}
    2728    {E2419315-B10A-4BC1-B517-A24DCF4C59AC} = {E2419315-B10A-4BC1-B517-A24DCF4C59AC}
     
    7475    {E10F395F-C8A6-48AD-B470-9AA7A1F43809} = {E10F395F-C8A6-48AD-B470-9AA7A1F43809}
    7576    {0C378762-D5DB-488A-8931-2BA42B1B7CBF} = {0C378762-D5DB-488A-8931-2BA42B1B7CBF}
     77    {97198965-AFEA-496B-B3B1-316905C43FD6} = {97198965-AFEA-496B-B3B1-316905C43FD6}
    7678    {3B90F866-70F8-43EF-A541-51819D255B7B} = {3B90F866-70F8-43EF-A541-51819D255B7B}
    7779    {07486E68-1517-4B9D-A58D-A38E99AE71AB} = {07486E68-1517-4B9D-A58D-A38E99AE71AB}
     
    446448EndProject
    447449Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Algorithms.ALPS-3.3", "HeuristicLab.Algorithms.ALPS\3.3\HeuristicLab.Algorithms.ALPS-3.3.csproj", "{59F354CB-FE13-4253-AED2-AD86372BEC27}"
     450EndProject
     451Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Problems.PTSP-3.3", "HeuristicLab.Problems.PTSP\3.3\HeuristicLab.Problems.PTSP-3.3.csproj", "{97198965-AFEA-496B-B3B1-316905C43FD6}"
     452EndProject
     453Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Problems.PTSP.Views-3.3", "HeuristicLab.Problems.PTSP.Views\3.3\HeuristicLab.Problems.PTSP.Views-3.3.csproj", "{90B6CA12-9791-4430-B2D7-CD3ED7F75E2B}"
    448454EndProject
    449455Global
     
    21732179    {59F354CB-FE13-4253-AED2-AD86372BEC27}.Release|x86.ActiveCfg = Release|x86
    21742180    {59F354CB-FE13-4253-AED2-AD86372BEC27}.Release|x86.Build.0 = Release|x86
     2181    {97198965-AFEA-496B-B3B1-316905C43FD6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
     2182    {97198965-AFEA-496B-B3B1-316905C43FD6}.Debug|Any CPU.Build.0 = Debug|Any CPU
     2183    {97198965-AFEA-496B-B3B1-316905C43FD6}.Debug|x64.ActiveCfg = Debug|x64
     2184    {97198965-AFEA-496B-B3B1-316905C43FD6}.Debug|x64.Build.0 = Debug|x64
     2185    {97198965-AFEA-496B-B3B1-316905C43FD6}.Debug|x86.ActiveCfg = Debug|x86
     2186    {97198965-AFEA-496B-B3B1-316905C43FD6}.Debug|x86.Build.0 = Debug|x86
     2187    {97198965-AFEA-496B-B3B1-316905C43FD6}.Release|Any CPU.ActiveCfg = Release|Any CPU
     2188    {97198965-AFEA-496B-B3B1-316905C43FD6}.Release|Any CPU.Build.0 = Release|Any CPU
     2189    {97198965-AFEA-496B-B3B1-316905C43FD6}.Release|x64.ActiveCfg = Release|x64
     2190    {97198965-AFEA-496B-B3B1-316905C43FD6}.Release|x64.Build.0 = Release|x64
     2191    {97198965-AFEA-496B-B3B1-316905C43FD6}.Release|x86.ActiveCfg = Release|x86
     2192    {97198965-AFEA-496B-B3B1-316905C43FD6}.Release|x86.Build.0 = Release|x86
     2193    {90B6CA12-9791-4430-B2D7-CD3ED7F75E2B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
     2194    {90B6CA12-9791-4430-B2D7-CD3ED7F75E2B}.Debug|Any CPU.Build.0 = Debug|Any CPU
     2195    {90B6CA12-9791-4430-B2D7-CD3ED7F75E2B}.Debug|x64.ActiveCfg = Debug|x64
     2196    {90B6CA12-9791-4430-B2D7-CD3ED7F75E2B}.Debug|x64.Build.0 = Debug|x64
     2197    {90B6CA12-9791-4430-B2D7-CD3ED7F75E2B}.Debug|x86.ActiveCfg = Debug|x86
     2198    {90B6CA12-9791-4430-B2D7-CD3ED7F75E2B}.Debug|x86.Build.0 = Debug|x86
     2199    {90B6CA12-9791-4430-B2D7-CD3ED7F75E2B}.Release|Any CPU.ActiveCfg = Release|Any CPU
     2200    {90B6CA12-9791-4430-B2D7-CD3ED7F75E2B}.Release|Any CPU.Build.0 = Release|Any CPU
     2201    {90B6CA12-9791-4430-B2D7-CD3ED7F75E2B}.Release|x64.ActiveCfg = Release|x64
     2202    {90B6CA12-9791-4430-B2D7-CD3ED7F75E2B}.Release|x64.Build.0 = Release|x64
     2203    {90B6CA12-9791-4430-B2D7-CD3ED7F75E2B}.Release|x86.ActiveCfg = Release|x86
     2204    {90B6CA12-9791-4430-B2D7-CD3ED7F75E2B}.Release|x86.Build.0 = Release|x86
    21752205  EndGlobalSection
    21762206  GlobalSection(SolutionProperties) = preSolution
  • stable/HeuristicLab.Problems.Instances

  • stable/HeuristicLab.Problems.Instances.TSPLIB/3.3/HeuristicLab.Problems.Instances.TSPLIB-3.3.csproj

    r11932 r13486  
    115115  </ItemGroup>
    116116  <ItemGroup>
     117    <Compile Include="TSPLIBHeterogeneousPTSPDataDescriptor.cs" />
     118    <Compile Include="TSPLIBHomogeneousPTSPDataDescriptor.cs" />
     119    <Compile Include="TSPLIBHeterogeneousPTSPInstanceProvider.cs" />
     120    <Compile Include="TSPLIBPTSPInstanceProvider.cs" />
    117121    <Compile Include="TSPLIBInstanceProvider.cs" />
    118122    <Compile Include="TSPLIBATSPInstanceProvider.cs" />
    119123    <Compile Include="TSPLIBCVRPInstanceProvider.cs" />
    120124    <Compile Include="TSPLIBDataDescriptor.cs" />
     125    <Compile Include="TSPLIBHomogeneousPTSPInstanceProvider.cs" />
    121126    <Compile Include="TSPLIBTSPInstanceProvider.cs" />
    122127    <Compile Include="TSPLIBParser.cs" />
     
    150155    </ProjectReference>
    151156  </ItemGroup>
    152   <ItemGroup />
    153157  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
    154158  <PropertyGroup>
  • stable/HeuristicLab.Problems.Instances.TSPLIB/3.3/TSPLIBATSPInstanceProvider.cs

    r12009 r13486  
    3636    protected override string FileExtension { get { return "atsp"; } }
    3737
    38     protected override ATSPData LoadInstance(TSPLIBParser parser) {
     38    protected override ATSPData LoadInstance(TSPLIBParser parser, IDataDescriptor descriptor = null) {
    3939      var instance = new ATSPData();
    4040
  • stable/HeuristicLab.Problems.Instances.TSPLIB/3.3/TSPLIBCVRPInstanceProvider.cs

    r12009 r13486  
    3636    protected override string FileExtension { get { return "vrp"; } }
    3737
    38     protected override CVRPData LoadInstance(TSPLIBParser parser) {
     38    protected override CVRPData LoadInstance(TSPLIBParser parser, IDataDescriptor descriptor = null) {
    3939      parser.Parse();
    4040      var instance = new CVRPData();
  • stable/HeuristicLab.Problems.Instances.TSPLIB/3.3/TSPLIBInstanceProvider.cs

    r12009 r13486  
    4545    protected abstract string FileExtension { get; }
    4646
    47     protected abstract T LoadInstance(TSPLIBParser parser);
     47    protected abstract T LoadInstance(TSPLIBParser parser, IDataDescriptor descriptor = null);
    4848    protected abstract void LoadSolution(TSPLIBParser parser, T instance);
    4949
     
    7474        var stream = entry.Open();
    7575        var parser = new TSPLIBParser(stream);
    76         var instance = LoadInstance(parser);
     76        var instance = LoadInstance(parser, id);
    7777
    7878        if (!String.IsNullOrEmpty(descriptor.SolutionIdentifier)) {
  • stable/HeuristicLab.Problems.Instances.TSPLIB/3.3/TSPLIBTSPInstanceProvider.cs

    r12009 r13486  
    3737    protected override string FileExtension { get { return "tsp"; } }
    3838
    39     protected override TSPData LoadInstance(TSPLIBParser parser) {
     39    protected override TSPData LoadInstance(TSPLIBParser parser, IDataDescriptor descriptor = null) {
    4040      parser.Parse();
    4141      if (parser.FixedEdges != null) throw new InvalidDataException("TSP instance " + parser.Name + " contains fixed edges which are not supported by HeuristicLab.");
  • stable/HeuristicLab.Problems.Instances/3.3/HeuristicLab.Problems.Instances-3.3.csproj

    r12742 r13486  
    121121    <Compile Include="ProblemInstanceManager.cs" />
    122122    <Compile Include="IProblemInstanceExporter.cs" />
     123    <Compile Include="Types\PTSPData.cs" />
    123124    <Compile Include="Types\ATSPData.cs" />
    124125    <Compile Include="Types\JSSPData.cs" />
  • stable/HeuristicLab.Problems.Instances/3.3/Types/DistanceHelper.cs

    r12009 r13486  
    2121
    2222using System;
    23 using System.Collections.Generic;
    24 using System.Linq;
    25 using System.Text;
    2623
    2724namespace HeuristicLab.Problems.Instances {
    2825  public enum DistanceMeasure { Direct, Euclidean, RoundedEuclidean, UpperEuclidean, Geo, Manhattan, Maximum, Att };
    29  
     26
    3027  public static class DistanceHelper {
    3128    /// <summary>
     
    3532    public static double[,] GetDistanceMatrix(DistanceMeasure distanceMeasure, double[,] coordinates, double[,] distances, int dimension) {
    3633      if (distances != null) return distances;
    37      
     34
    3835      distances = new double[dimension, dimension];
    3936      for (int i = 0; i < dimension - 1; i++)
     
    4441
    4542      return distances;
     43    }
     44
     45    public static double GetDistance(DistanceMeasure distanceMeasure, double x1, double y1, double x2, double y2) {
     46      switch (distanceMeasure) {
     47        case DistanceMeasure.Att:
     48          return AttDistance(x1, y1, x2, y2);
     49        case DistanceMeasure.Direct:
     50          throw new ArgumentException("Direct distance measure requires distance matrix for distance calculation.");
     51        case DistanceMeasure.Euclidean:
     52          return EuclideanDistance(x1, y1, x2, y2);
     53        case DistanceMeasure.Geo:
     54          return GeoDistance(x1, y1, x2, y2);
     55        case DistanceMeasure.Manhattan:
     56          return ManhattanDistance(x1, y1, x2, y2);
     57        case DistanceMeasure.Maximum:
     58          return MaximumDistance(x1, y1, x2, y2);
     59        case DistanceMeasure.RoundedEuclidean:
     60          return Math.Round(EuclideanDistance(x1, y1, x2, y2));
     61        case DistanceMeasure.UpperEuclidean:
     62          return Math.Ceiling(EuclideanDistance(x1, y1, x2, y2));
     63        default:
     64          throw new InvalidOperationException("Distance measure is not known.");
     65      }
    4666    }
    4767
  • stable/HeuristicLab.Tests

  • stable/HeuristicLab.Tests/HeuristicLab-3.3/DeepCloneableCloningTest.cs

    r12742 r13486  
    4646        typeof (HeuristicLab.Problems.DataAnalysis.ClassificationEnsembleSolution),
    4747        typeof (HeuristicLab.Problems.DataAnalysis.RegressionEnsembleSolution),
    48         typeof (HeuristicLab.Problems.Orienteering.DistanceMatrix)
     48        typeof (HeuristicLab.Problems.Orienteering.DistanceMatrix),
     49        typeof (HeuristicLab.Problems.PTSP.DistanceMatrix)
    4950      };
    5051      excludedTypes.Add(typeof(SymbolicExpressionGrammar).Assembly.GetType("HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.EmptySymbolicExpressionTreeGrammar"));
  • stable/HeuristicLab.Tests/HeuristicLab.Tests.csproj

    r13312 r13486  
    201201      <SpecificVersion>False</SpecificVersion>
    202202      <HintPath>..\bin\HeuristicLab.Encodings.LinearLinkageEncoding-3.3.dll</HintPath>
     203      <Private>False</Private>
    203204    </Reference>
    204205    <Reference Include="HeuristicLab.Encodings.PermutationEncoding-3.3">
     
    367368    <Reference Include="HeuristicLab.Problems.Orienteering-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
    368369      <HintPath>..\bin\HeuristicLab.Problems.Orienteering-3.3.dll</HintPath>
     370      <Private>False</Private>
     371    </Reference>
     372    <Reference Include="HeuristicLab.Problems.PTSP-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
     373      <SpecificVersion>False</SpecificVersion>
     374      <HintPath>..\bin\HeuristicLab.Problems.PTSP-3.3.dll</HintPath>
    369375      <Private>False</Private>
    370376    </Reference>
     
    572578    <Compile Include="HeuristicLab.Problems.Instances-3.3\TSPLIBInstanceProviderTest.cs" />
    573579    <Compile Include="HeuristicLab.Problems.Instances.DataAnalysis-3.3\ClassificationInstanceProviderTest.cs" />
     580    <Compile Include="HeuristicLab.Problems.PTSP-3.3\PTSPMoveEvaluatorTest.cs" />
    574581    <Compile Include="HeuristicLab.Problems.QuadraticAssignment-3.3\QAPLIBInstancesTest.cs" />
    575582    <Compile Include="HeuristicLab.Problems.QuadraticAssignment-3.3\QAPMoveEvaluatorTest.cs" />
Note: See TracChangeset for help on using the changeset viewer.