Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
03/22/11 01:56:25 (13 years ago)
Author:
abeham
Message:

#1330

  • Added Swap2 move to permutation (+tabu search operators)
  • Added move evaluators for QAP (translocation/insertion missing)
  • Merged trunk-changes from Optimization into QAP branch
Location:
branches/QAP/HeuristicLab.Encodings.PermutationEncoding
Files:
15 added
3 edited
1 copied

Legend:

Unmodified
Added
Removed
  • branches/QAP/HeuristicLab.Encodings.PermutationEncoding/3.3/HeuristicLab.Encodings.PermutationEncoding-3.3.csproj

    r5163 r5785  
    1919    </UpgradeBackupLocation>
    2020    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
    21     <TargetFrameworkProfile></TargetFrameworkProfile>
     21    <TargetFrameworkProfile>
     22    </TargetFrameworkProfile>
    2223    <PublishUrl>publish\</PublishUrl>
    2324    <Install>true</Install>
     
    9697  </PropertyGroup>
    9798  <ItemGroup>
     99    <Reference Include="HeuristicLab.Collections-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=x86">
     100      <HintPath>..\..\..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Collections-3.3.dll</HintPath>
     101    </Reference>
     102    <Reference Include="HeuristicLab.Common-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=x86">
     103      <HintPath>..\..\..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Common-3.3.dll</HintPath>
     104    </Reference>
     105    <Reference Include="HeuristicLab.Common.Resources-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=x86">
     106      <HintPath>..\..\..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Common.Resources-3.3.dll</HintPath>
     107    </Reference>
     108    <Reference Include="HeuristicLab.Core-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=x86">
     109      <HintPath>..\..\..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Core-3.3.dll</HintPath>
     110    </Reference>
     111    <Reference Include="HeuristicLab.Data-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=x86">
     112      <HintPath>..\..\..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Data-3.3.dll</HintPath>
     113    </Reference>
     114    <Reference Include="HeuristicLab.Operators-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=x86">
     115      <HintPath>..\..\..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Operators-3.3.dll</HintPath>
     116    </Reference>
     117    <Reference Include="HeuristicLab.Optimization.Operators-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=x86">
     118      <HintPath>..\..\..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Optimization.Operators-3.3.dll</HintPath>
     119    </Reference>
     120    <Reference Include="HeuristicLab.Parameters-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=x86">
     121      <HintPath>..\..\..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Parameters-3.3.dll</HintPath>
     122    </Reference>
     123    <Reference Include="HeuristicLab.Persistence-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=x86">
     124      <HintPath>..\..\..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Persistence-3.3.dll</HintPath>
     125    </Reference>
     126    <Reference Include="HeuristicLab.PluginInfrastructure-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=x86">
     127      <HintPath>..\..\..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.PluginInfrastructure-3.3.dll</HintPath>
     128    </Reference>
    98129    <Reference Include="System" />
    99130    <Reference Include="System.Core">
     
    118149    <Compile Include="Crossovers\PositionBasedCrossover.cs" />
    119150    <Compile Include="HeuristicLabEncodingsPermutationEncodingPlugin.cs" />
     151    <Compile Include="Interfaces\IPermutationSwapMoveOperator.cs" />
    120152    <Compile Include="Interfaces\IPermutationCreator.cs" />
    121153    <Compile Include="Interfaces\IPermutationCrossover.cs" />
     
    133165    <Compile Include="Manipulators\TranslocationInversionManipulator.cs" />
    134166    <Compile Include="Manipulators\TranslocationManipulator.cs" />
     167    <Compile Include="Moves\Edge.cs" />
    135168    <Compile Include="Moves\PermutationMoveAttribute.cs" />
     169    <Compile Include="Moves\StandardEdgeEqualityComparer.cs" />
     170    <Compile Include="Moves\Swap\SwapMoveSoftTabuCriterion.cs" />
     171    <Compile Include="Moves\Swap\ExhaustiveSwapMoveGenerator.cs" />
     172    <Compile Include="Moves\Swap\StochasticSwapSingleMoveGenerator.cs" />
     173    <Compile Include="Moves\Swap\SwapMoveAbsoluteAttribute.cs" />
     174    <Compile Include="Moves\Swap\SwapMoveHardTabuCriterion.cs" />
     175    <Compile Include="Moves\Swap\SwapMoveMaker.cs" />
     176    <Compile Include="Moves\Swap\SwapMoveRelativeAttribute.cs" />
     177    <Compile Include="Moves\Swap\SwapMoveTabuMaker.cs" />
     178    <Compile Include="Moves\Swap\StochasticSwapMultiMoveGenerator.cs" />
     179    <Compile Include="Moves\Swap\SwapMoveGenerator.cs" />
     180    <Compile Include="Moves\Swap\SwapMove.cs" />
    136181    <Compile Include="Moves\ThreeIndexMove.cs" />
    137182    <Compile Include="Moves\ThreeOpt\StochasticSingleInsertionMoveGenerator.cs" />
     
    176221  </ItemGroup>
    177222  <ItemGroup>
    178     <ProjectReference Include="..\..\HeuristicLab.Collections\3.3\HeuristicLab.Collections-3.3.csproj">
    179       <Project>{958B43BC-CC5C-4FA2-8628-2B3B01D890B6}</Project>
    180       <Name>HeuristicLab.Collections-3.3</Name>
    181     </ProjectReference>
    182     <ProjectReference Include="..\..\HeuristicLab.Common.Resources\3.3\HeuristicLab.Common.Resources-3.3.csproj">
    183       <Project>{0E27A536-1C4A-4624-A65E-DC4F4F23E3E1}</Project>
    184       <Name>HeuristicLab.Common.Resources-3.3</Name>
    185     </ProjectReference>
    186     <ProjectReference Include="..\..\HeuristicLab.Common\3.3\HeuristicLab.Common-3.3.csproj">
    187       <Project>{A9AD58B9-3EF9-4CC1-97E5-8D909039FF5C}</Project>
    188       <Name>HeuristicLab.Common-3.3</Name>
    189     </ProjectReference>
    190     <ProjectReference Include="..\..\HeuristicLab.Core\3.3\HeuristicLab.Core-3.3.csproj">
    191       <Project>{C36BD924-A541-4A00-AFA8-41701378DDC5}</Project>
    192       <Name>HeuristicLab.Core-3.3</Name>
    193     </ProjectReference>
    194     <ProjectReference Include="..\..\HeuristicLab.Data\3.3\HeuristicLab.Data-3.3.csproj">
    195       <Project>{BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}</Project>
    196       <Name>HeuristicLab.Data-3.3</Name>
    197     </ProjectReference>
    198     <ProjectReference Include="..\..\HeuristicLab.Operators\3.3\HeuristicLab.Operators-3.3.csproj">
    199       <Project>{23DA7FF4-D5B8-41B6-AA96-F0561D24F3EE}</Project>
    200       <Name>HeuristicLab.Operators-3.3</Name>
    201     </ProjectReference>
    202     <ProjectReference Include="..\..\HeuristicLab.Optimization.Operators\3.3\HeuristicLab.Optimization.Operators-3.3.csproj">
    203       <Project>{25087811-F74C-4128-BC86-8324271DA13E}</Project>
    204       <Name>HeuristicLab.Optimization.Operators-3.3</Name>
    205     </ProjectReference>
    206223    <ProjectReference Include="..\..\HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj">
    207224      <Project>{14AB8D24-25BC-400C-A846-4627AA945192}</Project>
    208225      <Name>HeuristicLab.Optimization-3.3</Name>
    209     </ProjectReference>
    210     <ProjectReference Include="..\..\HeuristicLab.Parameters\3.3\HeuristicLab.Parameters-3.3.csproj">
    211       <Project>{56F9106A-079F-4C61-92F6-86A84C2D84B7}</Project>
    212       <Name>HeuristicLab.Parameters-3.3</Name>
    213     </ProjectReference>
    214     <ProjectReference Include="..\..\HeuristicLab.Persistence\3.3\HeuristicLab.Persistence-3.3.csproj">
    215       <Project>{102BC7D3-0EF9-439C-8F6D-96FF0FDB8E1B}</Project>
    216       <Name>HeuristicLab.Persistence-3.3</Name>
    217     </ProjectReference>
    218     <ProjectReference Include="..\..\HeuristicLab.PluginInfrastructure\3.3\HeuristicLab.PluginInfrastructure-3.3.csproj">
    219       <Project>{94186A6A-5176-4402-AE83-886557B53CCA}</Project>
    220       <Name>HeuristicLab.PluginInfrastructure-3.3</Name>
    221226    </ProjectReference>
    222227  </ItemGroup>
     
    238243    </BootstrapperPackage>
    239244  </ItemGroup>
     245  <ItemGroup />
    240246  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
    241247  <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
     
    255261SubWCRev "%25ProjectDir%25\" "%25ProjectDir%25\HeuristicLabEncodingsPermutationEncodingPlugin.cs.frame" "%25ProjectDir%25\HeuristicLabEncodingsPermutationEncodingPlugin.cs"</PreBuildEvent>
    256262  </PropertyGroup>
     263  <PropertyGroup>
     264    <PostBuildEvent>copy "$(TargetPath)" "C:\Program Files\HeuristicLab 3.3\"</PostBuildEvent>
     265  </PropertyGroup>
    257266</Project>
  • branches/QAP/HeuristicLab.Encodings.PermutationEncoding/3.3/Manipulators/Swap2Manipulator.cs

    r5445 r5785  
    4949    /// <param name="permutation">The permutation to manipulate.</param>
    5050    public static void Apply(IRandom random, Permutation permutation) {
    51       int index1, index2, temp;
     51      int index1, index2;
    5252
    5353      index1 = random.Next(permutation.Length);
    5454      index2 = random.Next(permutation.Length);
    5555
    56       temp = permutation[index1];
     56      Apply(permutation, index1, index2);
     57    }
     58
     59    public static void Apply(Permutation permutation, int index1, int index2) {
     60      int temp = permutation[index1];
    5761      permutation[index1] = permutation[index2];
    5862      permutation[index2] = temp;
  • branches/QAP/HeuristicLab.Encodings.PermutationEncoding/3.3/Tests/HeuristicLab.Encodings.PermutationEncoding-3.3.Tests.csproj

    r5163 r5785  
    9090  </PropertyGroup>
    9191  <ItemGroup>
     92    <Reference Include="HeuristicLab.Collections-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=x86">
     93      <HintPath>..\..\..\..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Collections-3.3.dll</HintPath>
     94    </Reference>
     95    <Reference Include="HeuristicLab.Common-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=x86">
     96      <HintPath>..\..\..\..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Common-3.3.dll</HintPath>
     97    </Reference>
     98    <Reference Include="HeuristicLab.Core-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=x86">
     99      <HintPath>..\..\..\..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Core-3.3.dll</HintPath>
     100    </Reference>
     101    <Reference Include="HeuristicLab.Data-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=x86">
     102      <HintPath>..\..\..\..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Data-3.3.dll</HintPath>
     103    </Reference>
     104    <Reference Include="HeuristicLab.Operators-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=x86">
     105      <HintPath>..\..\..\..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Operators-3.3.dll</HintPath>
     106    </Reference>
    92107    <Reference Include="Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" />
    93108    <Reference Include="System" />
     
    125140  </ItemGroup>
    126141  <ItemGroup>
    127     <ProjectReference Include="..\..\..\HeuristicLab.Collections\3.3\HeuristicLab.Collections-3.3.csproj">
    128       <Project>{958B43BC-CC5C-4FA2-8628-2B3B01D890B6}</Project>
    129       <Name>HeuristicLab.Collections-3.3</Name>
    130     </ProjectReference>
    131     <ProjectReference Include="..\..\..\HeuristicLab.Common\3.3\HeuristicLab.Common-3.3.csproj">
    132       <Project>{A9AD58B9-3EF9-4CC1-97E5-8D909039FF5C}</Project>
    133       <Name>HeuristicLab.Common-3.3</Name>
    134     </ProjectReference>
    135     <ProjectReference Include="..\..\..\HeuristicLab.Core\3.3\HeuristicLab.Core-3.3.csproj">
    136       <Project>{C36BD924-A541-4A00-AFA8-41701378DDC5}</Project>
    137       <Name>HeuristicLab.Core-3.3</Name>
    138     </ProjectReference>
    139     <ProjectReference Include="..\..\..\HeuristicLab.Data\3.3\HeuristicLab.Data-3.3.csproj">
    140       <Project>{BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}</Project>
    141       <Name>HeuristicLab.Data-3.3</Name>
    142     </ProjectReference>
    143     <ProjectReference Include="..\..\..\HeuristicLab.Operators\3.3\HeuristicLab.Operators-3.3.csproj">
    144       <Project>{23DA7FF4-D5B8-41B6-AA96-F0561D24F3EE}</Project>
    145       <Name>HeuristicLab.Operators-3.3</Name>
    146     </ProjectReference>
    147142    <ProjectReference Include="..\..\..\HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj">
    148143      <Project>{14AB8D24-25BC-400C-A846-4627AA945192}</Project>
    149144      <Name>HeuristicLab.Optimization-3.3</Name>
    150     </ProjectReference>
    151     <ProjectReference Include="..\..\..\HeuristicLab.Parameters\3.3\HeuristicLab.Parameters-3.3.csproj">
    152       <Project>{56F9106A-079F-4C61-92F6-86A84C2D84B7}</Project>
    153       <Name>HeuristicLab.Parameters-3.3</Name>
    154     </ProjectReference>
    155     <ProjectReference Include="..\..\..\HeuristicLab.Persistence\3.3\HeuristicLab.Persistence-3.3.csproj">
    156       <Project>{102BC7D3-0EF9-439C-8F6D-96FF0FDB8E1B}</Project>
    157       <Name>HeuristicLab.Persistence-3.3</Name>
    158     </ProjectReference>
    159     <ProjectReference Include="..\..\..\HeuristicLab.PluginInfrastructure\3.3\HeuristicLab.PluginInfrastructure-3.3.csproj">
    160       <Project>{94186A6A-5176-4402-AE83-886557B53CCA}</Project>
    161       <Name>HeuristicLab.PluginInfrastructure-3.3</Name>
    162145    </ProjectReference>
    163146    <ProjectReference Include="..\HeuristicLab.Encodings.PermutationEncoding-3.3.csproj">
Note: See TracChangeset for help on using the changeset viewer.