Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
05/10/12 10:42:06 (13 years ago)
Author:
jkarder
Message:

#1331:

  • added Scatter Search algorithm
  • added problem specific operators for improvement, path relinking and similarity calculation
  • adjusted event handling
Location:
branches/ScatterSearch (trunk integration)
Files:
42 added
8 edited

Legend:

Unmodified
Added
Removed
  • branches/ScatterSearch (trunk integration)/HeuristicLab 3.3.sln

    r7650 r7789  
    293293EndProject
    294294Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Problems.Instances.CordeauGQAP-3.3", "HeuristicLab.Problems.Instances.CordeauGQAP\3.3\HeuristicLab.Problems.Instances.CordeauGQAP-3.3.csproj", "{1F2718DA-BF13-40EE-A7FD-EEDB4912E64E}"
     295EndProject
     296Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Algorithms.ScatterSearch-3.3", "HeuristicLab.Algorithms.ScatterSearch\3.3\HeuristicLab.Algorithms.ScatterSearch-3.3.csproj", "{5FEE5DB4-7FD9-4CBD-BEC2-3FEE17B31A94}"
    295297EndProject
    296298Global
     
    14351437    {1F2718DA-BF13-40EE-A7FD-EEDB4912E64E}.Release|x86.ActiveCfg = Release|x86
    14361438    {1F2718DA-BF13-40EE-A7FD-EEDB4912E64E}.Release|x86.Build.0 = Release|x86
     1439    {5FEE5DB4-7FD9-4CBD-BEC2-3FEE17B31A94}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
     1440    {5FEE5DB4-7FD9-4CBD-BEC2-3FEE17B31A94}.Debug|Any CPU.Build.0 = Debug|Any CPU
     1441    {5FEE5DB4-7FD9-4CBD-BEC2-3FEE17B31A94}.Debug|x64.ActiveCfg = Debug|Any CPU
     1442    {5FEE5DB4-7FD9-4CBD-BEC2-3FEE17B31A94}.Debug|x86.ActiveCfg = Debug|Any CPU
     1443    {5FEE5DB4-7FD9-4CBD-BEC2-3FEE17B31A94}.Release|Any CPU.ActiveCfg = Release|Any CPU
     1444    {5FEE5DB4-7FD9-4CBD-BEC2-3FEE17B31A94}.Release|Any CPU.Build.0 = Release|Any CPU
     1445    {5FEE5DB4-7FD9-4CBD-BEC2-3FEE17B31A94}.Release|x64.ActiveCfg = Release|Any CPU
     1446    {5FEE5DB4-7FD9-4CBD-BEC2-3FEE17B31A94}.Release|x86.ActiveCfg = Release|Any CPU
    14371447  EndGlobalSection
    14381448  GlobalSection(SolutionProperties) = preSolution
  • branches/ScatterSearch (trunk integration)/HeuristicLab.Optimization.Operators/3.3/HeuristicLab.Optimization.Operators-3.3.csproj

    r7704 r7789  
    108108  </ItemGroup>
    109109  <ItemGroup>
     110    <Compile Include="ISimilarityCalculator.cs" />
    110111    <Compile Include="GeneralizedExponentialDiscreteDoubleValueModifier.cs" />
     112    <Compile Include="IImprovementOperator.cs" />
     113    <Compile Include="IPathRelinker.cs" />
    111114    <Compile Include="MultiObjective\CrowdedComparisonSorter.cs" />
    112115    <Compile Include="MultiObjective\CrowdingDistanceAssignment.cs" />
     
    114117    <Compile Include="MultiObjective\FastNonDominatedSort.cs" />
    115118    <Compile Include="MultiObjective\RankAndCrowdingSorter.cs" />
     119    <Compile Include="PathRelinker.cs" />
    116120    <Compile Include="Plugin.cs" />
    117121    <Compile Include="ShakingOperator.cs" />
     122    <Compile Include="SimilarityCalculator.cs" />
    118123    <Compile Include="UserDefinedCrossover.cs" />
    119124    <Compile Include="UserDefinedEvaluator.cs" />
  • branches/ScatterSearch (trunk integration)/HeuristicLab.Problems.Knapsack/3.3/HeuristicLab.Problems.Knapsack-3.3.csproj

    r6866 r7789  
    109109  <ItemGroup>
    110110    <Compile Include="Evaluators\KnapsackEvaluator.cs" />
     111    <Compile Include="Improvers\KnapsackImprovementOperator.cs" />
    111112    <Compile Include="Interfaces\IKnapsackEvaluator.cs" />
    112113    <Compile Include="Interfaces\IKnapsackMoveEvaluator.cs" />
     
    115116    <Compile Include="MoveEvaluators\KnapsackMoveEvaluator.cs" />
    116117    <Compile Include="MoveEvaluators\KnapsackOneBitflipMoveEvaluator.cs" />
     118    <Compile Include="PathRelinkers\KnapsackMultipleGuidesPathRelinker.cs" />
     119    <Compile Include="PathRelinkers\KnapsackPathRelinker.cs" />
     120    <Compile Include="PathRelinkers\KnapsackSimultaneousPathRelinker.cs" />
    117121    <Compile Include="Plugin.cs" />
    118122    <Compile Include="Properties\AssemblyInfo.cs" />
    119123    <Compile Include="Analyzers\BestKnapsackSolutionAnalyzer.cs" />
     124    <Compile Include="SimilarityCalculators\KnapsackSimilarityCalculator.cs" />
    120125  </ItemGroup>
    121126  <ItemGroup>
     
    159164      <Name>HeuristicLab.Operators-3.3</Name>
    160165      <Private>False</Private>
     166    </ProjectReference>
     167    <ProjectReference Include="..\..\HeuristicLab.Optimization.Operators\3.3\HeuristicLab.Optimization.Operators-3.3.csproj">
     168      <Project>{25087811-F74C-4128-BC86-8324271DA13E}</Project>
     169      <Name>HeuristicLab.Optimization.Operators-3.3</Name>
    161170    </ProjectReference>
    162171    <ProjectReference Include="..\..\HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj">
     
    198207    </BootstrapperPackage>
    199208  </ItemGroup>
     209  <ItemGroup />
    200210  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
    201211  <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
  • branches/ScatterSearch (trunk integration)/HeuristicLab.Problems.Knapsack/3.3/KnapsackProblem.cs

    r7351 r7789  
    2828using HeuristicLab.Encodings.BinaryVectorEncoding;
    2929using HeuristicLab.Optimization;
     30using HeuristicLab.Optimization.Operators;
    3031using HeuristicLab.Parameters;
    3132using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     
    244245    }
    245246    private void InitializeOperators() {
     247      Operators.Add(new KnapsackImprovementOperator());
     248      Operators.Add(new KnapsackMultipleGuidesPathRelinker());
     249      Operators.Add(new KnapsackPathRelinker());
     250      Operators.Add(new KnapsackSimultaneousPathRelinker());
     251      Operators.Add(new KnapsackSimilarityCalculator());
     252
    246253      Operators.Add(new BestKnapsackSolutionAnalyzer());
    247254      ParameterizeAnalyzer();
     
    290297        op.BinaryVectorParameter.Hidden = true;
    291298      }
     299      foreach (IImprovementOperator op in Operators.OfType<IImprovementOperator>()) {
     300        op.TargetParameter.ActualName = SolutionCreator.BinaryVectorParameter.ActualName;
     301        op.TargetParameter.Hidden = true;
     302      }
     303      foreach (IPathRelinker op in Operators.OfType<IPathRelinker>()) {
     304        op.ParentsParameter.ActualName = SolutionCreator.BinaryVectorParameter.ActualName;
     305        op.ParentsParameter.Hidden = true;
     306      }
     307      foreach (ISimilarityCalculator op in Operators.OfType<ISimilarityCalculator>()) {
     308        op.TargetParameter.ActualName = SolutionCreator.BinaryVectorParameter.ActualName;
     309        op.TargetParameter.Hidden = true;
     310      }
    292311    }
    293312    #endregion
  • branches/ScatterSearch (trunk integration)/HeuristicLab.Problems.TestFunctions/3.3/HeuristicLab.Problems.TestFunctions-3.3.csproj

    r6866 r7789  
    108108  </ItemGroup>
    109109  <ItemGroup>
     110    <Compile Include="Improvers\SingleObjectiveTestFunctionImprovementOperator.cs" />
     111    <Compile Include="PathRelinkers\SingleObjectiveTestFunctionPathRelinker.cs" />
    110112    <Compile Include="Plugin.cs" />
    111113    <Compile Include="Properties\AssemblyInfo.cs" />
     
    152154    <Compile Include="MoveEvaluators\RealVectorAdditiveMoveWrapper.cs" />
    153155    <Compile Include="RealVectorToRealVectorEncoder.cs" />
     156    <Compile Include="SimilarityCalculators\SingleObjectiveTestFunctionSimilarityCalculator.cs" />
    154157    <Compile Include="SingleObjectiveTestFunctionSolution.cs" />
    155158    <Compile Include="SingleObjectiveTestFunctionProblem.cs" />
     
    193196      <Name>HeuristicLab.Operators-3.3</Name>
    194197      <Private>False</Private>
     198    </ProjectReference>
     199    <ProjectReference Include="..\..\HeuristicLab.Optimization.Operators\3.3\HeuristicLab.Optimization.Operators-3.3.csproj">
     200      <Project>{25087811-F74C-4128-BC86-8324271DA13E}</Project>
     201      <Name>HeuristicLab.Optimization.Operators-3.3</Name>
    195202    </ProjectReference>
    196203    <ProjectReference Include="..\..\HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj">
     
    232239    </BootstrapperPackage>
    233240  </ItemGroup>
     241  <ItemGroup />
    234242  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
    235243  <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
  • branches/ScatterSearch (trunk integration)/HeuristicLab.Problems.TestFunctions/3.3/SingleObjectiveTestFunctionProblem.cs

    r7442 r7789  
    2828using HeuristicLab.Encodings.RealVectorEncoding;
    2929using HeuristicLab.Optimization;
     30using HeuristicLab.Optimization.Operators;
    3031using HeuristicLab.Parameters;
    3132using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     
    257258    }
    258259    private void InitializeOperators() {
     260      Operators.Add(new SingleObjectiveTestFunctionImprovementOperator());
     261      Operators.Add(new SingleObjectiveTestFunctionPathRelinker());
     262      Operators.Add(new SingleObjectiveTestFunctionSimilarityCalculator());
     263
    259264      Operators.Add(new BestSingleObjectiveTestFunctionSolutionAnalyzer());
    260265      ParameterizeAnalyzers();
     
    363368        op.RealVectorParameter.Hidden = true;
    364369      }
     370      foreach (IImprovementOperator op in Operators.OfType<IImprovementOperator>()) {
     371        op.TargetParameter.ActualName = SolutionCreator.RealVectorParameter.ActualName;
     372        op.TargetParameter.Hidden = true;
     373      }
     374      foreach (IPathRelinker op in Operators.OfType<IPathRelinker>()) {
     375        op.ParentsParameter.ActualName = SolutionCreator.RealVectorParameter.ActualName;
     376        op.ParentsParameter.Hidden = true;
     377      }
     378      foreach (ISimilarityCalculator op in Operators.OfType<ISimilarityCalculator>()) {
     379        op.TargetParameter.ActualName = SolutionCreator.RealVectorParameter.ActualName;
     380        op.TargetParameter.Hidden = true;
     381      }
    365382    }
    366383    private void UpdateStrategyVectorBounds() {
  • branches/ScatterSearch (trunk integration)/HeuristicLab.Problems.TravelingSalesman/3.3/HeuristicLab.Problems.TravelingSalesman-3.3.csproj

    r7646 r7789  
    118118    <Compile Include="Evaluators\TSPEuclideanPathEvaluator.cs" />
    119119    <Compile Include="Evaluators\TSPGeoPathEvaluator.cs" />
     120    <Compile Include="Improvers\TSPImprovementOperator.cs" />
    120121    <Compile Include="Interfaces\ITSPDistanceMatrixEvaluator.cs" />
    121122    <Compile Include="MoveEvaluators\ThreeOpt\TSPTranslocationMoveEuclideanPathEvaluator.cs" />
     
    127128    <Compile Include="MoveEvaluators\TwoOpt\TSPInversionMovePathEvaluator.cs" />
    128129    <Compile Include="MoveEvaluators\TwoOpt\TSPInversionMoveRoundedEuclideanPathEvaluator.cs" />
     130    <Compile Include="PathRelinkers\TSPMultipleGuidesPathRelinker.cs" />
     131    <Compile Include="PathRelinkers\TSPPathRelinker.cs" />
     132    <Compile Include="PathRelinkers\TSPSimultaneousPathRelinker.cs" />
    129133    <Compile Include="Plugin.cs" />
     134    <Compile Include="SimilarityCalculators\TSPSimilarityCalculator.cs" />
    130135    <Compile Include="TravelingSalesmanProblem.cs" />
    131136    <Compile Include="PathTSPTour.cs" />
     
    182187      <Name>HeuristicLab.Operators-3.3</Name>
    183188      <Private>False</Private>
     189    </ProjectReference>
     190    <ProjectReference Include="..\..\HeuristicLab.Optimization.Operators\3.3\HeuristicLab.Optimization.Operators-3.3.csproj">
     191      <Project>{25087811-F74C-4128-BC86-8324271DA13E}</Project>
     192      <Name>HeuristicLab.Optimization.Operators-3.3</Name>
    184193    </ProjectReference>
    185194    <ProjectReference Include="..\..\HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj">
  • branches/ScatterSearch (trunk integration)/HeuristicLab.Problems.TravelingSalesman/3.3/TravelingSalesmanProblem.cs

    r7658 r7789  
    2929using HeuristicLab.Encodings.PermutationEncoding;
    3030using HeuristicLab.Optimization;
     31using HeuristicLab.Optimization.Operators;
    3132using HeuristicLab.Parameters;
    3233using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     
    222223
    223224    private void InitializeOperators() {
     225      Operators.Add(new TSPImprovementOperator());
     226      Operators.Add(new TSPMultipleGuidesPathRelinker());
     227      Operators.Add(new TSPPathRelinker());
     228      Operators.Add(new TSPSimultaneousPathRelinker());
     229      Operators.Add(new TSPSimilarityCalculator());
     230
    224231      Operators.Add(new BestTSPSolutionAnalyzer());
    225232      Operators.Add(new TSPAlleleFrequencyAnalyzer());
     
    335342        op.PermutationParameter.ActualName = SolutionCreator.PermutationParameter.ActualName;
    336343        op.PermutationParameter.Hidden = true;
     344      }
     345      foreach (IImprovementOperator op in Operators.OfType<IImprovementOperator>()) {
     346        op.TargetParameter.ActualName = SolutionCreator.PermutationParameter.ActualName;
     347        op.TargetParameter.Hidden = true;
     348      }
     349      foreach (IPathRelinker op in Operators.OfType<IPathRelinker>()) {
     350        op.ParentsParameter.ActualName = SolutionCreator.PermutationParameter.ActualName;
     351        op.ParentsParameter.Hidden = true;
     352      }
     353      foreach (ISimilarityCalculator op in Operators.OfType<ISimilarityCalculator>()) {
     354        op.TargetParameter.ActualName = SolutionCreator.PermutationParameter.ActualName;
     355        op.TargetParameter.Hidden = true;
    337356      }
    338357    }
Note: See TracChangeset for help on using the changeset viewer.