Changeset 5622 for branches/VNS/HeuristicLab.Algorithms.LocalSearch
- Timestamp:
- 03/07/11 17:23:04 (14 years ago)
- Location:
- branches/VNS/HeuristicLab.Algorithms.LocalSearch/3.3
- Files:
-
- 1 added
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/VNS/HeuristicLab.Algorithms.LocalSearch/3.3/HeuristicLab.Algorithms.LocalSearch-3.3.csproj
r5163 r5622 12 12 <AssemblyName>HeuristicLab.Algorithms.LocalSearch-3.3</AssemblyName> 13 13 <TargetFrameworkVersion>v4.0</TargetFrameworkVersion> 14 <TargetFrameworkProfile></TargetFrameworkProfile> 14 <TargetFrameworkProfile> 15 </TargetFrameworkProfile> 15 16 <FileAlignment>512</FileAlignment> 16 17 <SignAssembly>true</SignAssembly> … … 107 108 <ItemGroup> 108 109 <Compile Include="HeuristicLabAlgorithmsLocalSearchPlugin.cs" /> 110 <Compile Include="LocalSearchImprovement.cs" /> 109 111 <Compile Include="LocalSearchMainLoop.cs" /> 110 112 <Compile Include="Properties\AssemblyInfo.cs" /> -
branches/VNS/HeuristicLab.Algorithms.LocalSearch/3.3/LocalSearchMainLoop.cs
r5445 r5622 79 79 public LocalSearchMainLoop() 80 80 : base() { 81 Initialize(); 81 Initialize(false); 82 } 83 public LocalSearchMainLoop(BoolValue nested) 84 : base() { 85 Initialize(nested.Value); 82 86 } 83 87 private LocalSearchMainLoop(LocalSearchMainLoop original, Cloner cloner) … … 88 92 } 89 93 90 private void Initialize( ) {94 private void Initialize(bool nested) { 91 95 #region Create parameters 92 96 Parameters.Add(new ValueLookupParameter<IRandom>("Random", "A pseudo random number generator.")); … … 132 136 133 137 variableCreator.CollectedValues.Add(new ValueParameter<IntValue>("Iterations", new IntValue(0))); // Class LocalSearch expects this to be called Iterations 134 variableCreator.CollectedValues.Add(new ValueParameter<DoubleValue>("BestQuality", new DoubleValue(0))); 138 if (!nested) { 139 variableCreator.CollectedValues.Add(new ValueParameter<DoubleValue>("BestQuality", new DoubleValue(0))); 140 } 135 141 136 142 bestQualityInitializer.Name = "Initialize BestQuality"; … … 143 149 resultsCollector1.CopyValue = new BoolValue(false); 144 150 resultsCollector1.CollectedValues.Add(new LookupParameter<IntValue>("Iterations")); 145 resultsCollector1.CollectedValues.Add(new LookupParameter<DoubleValue>("Best Quality", null, "BestQuality")); 151 if (!nested) { 152 resultsCollector1.CollectedValues.Add(new LookupParameter<DoubleValue>("Best Quality", null, "BestQuality")); 153 } 146 154 resultsCollector1.ResultsParameter.ActualName = ResultsParameter.Name; 147 155 … … 197 205 OperatorGraph.InitialOperator = variableCreator; 198 206 variableCreator.Successor = subScopesProcessor0; 199 subScopesProcessor0.Operators.Add(bestQualityInitializer); 207 if (!nested) { 208 subScopesProcessor0.Operators.Add(bestQualityInitializer); 209 } else { 210 subScopesProcessor0.Operators.Add(analyzer1); 211 } 200 212 subScopesProcessor0.Successor = resultsCollector1; 201 213 bestQualityInitializer.Successor = analyzer1; … … 218 230 improvesQualityBranch.FalseBranch = null; 219 231 improvesQualityBranch.Successor = null; 220 moveMaker.Successor = bestQualityUpdater; 232 if (!nested) { 233 moveMaker.Successor = bestQualityUpdater; 234 } else { 235 moveMaker.Successor = null; 236 } 221 237 bestQualityUpdater.Successor = null; 222 238 mergingReducer.Successor = analyzer2;
Note: See TracChangeset
for help on using the changeset viewer.