- Timestamp:
- 05/16/12 16:28:49 (13 years ago)
- Location:
- branches/HeuristicLab.TimeSeries
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HeuristicLab.TimeSeries
- Property svn:mergeinfo changed
-
branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.QuadraticAssignment
- Property svn:mergeinfo changed
/trunk/sources/HeuristicLab.Problems.QuadraticAssignment merged: 7626,7641,7646,7768
- Property svn:mergeinfo changed
-
branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.QuadraticAssignment/3.3/HeuristicLab.Problems.QuadraticAssignment-3.3.csproj
r7615 r7842 200 200 <Project>{3540E29E-4793-49E7-8EE2-FEA7F61C3994}</Project> 201 201 <Name>HeuristicLab.Problems.Instances-3.3</Name> 202 <Private>False</Private> 202 203 </ProjectReference> 203 204 </ItemGroup> -
branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.QuadraticAssignment/3.3/QuadraticAssignmentProblem.cs
r7615 r7842 21 21 22 22 using System; 23 using System.Collections.Generic; 23 24 using System.Drawing; 24 25 using System.Linq; … … 253 254 254 255 private void InitializeOperators() { 255 Operators.AddRange(ApplicationManager.Manager.GetInstances<IPermutationOperator>()); 256 var defaultOperators = new HashSet<IPermutationOperator>(new IPermutationOperator[] { 257 new PartiallyMatchedCrossover(), 258 new Swap2Manipulator(), 259 new ExhaustiveSwap2MoveGenerator() 260 }); 261 Operators.AddRange(defaultOperators); 262 Operators.AddRange(ApplicationManager.Manager.GetInstances<IPermutationOperator>().Except(defaultOperators, new TypeEqualityComparer<IPermutationOperator>())); 256 263 Operators.RemoveAll(x => x is ISingleObjectiveMoveEvaluator); 257 264 Operators.AddRange(ApplicationManager.Manager.GetInstances<IQAPMoveEvaluator>()); … … 315 322 } 316 323 if (Operators.OfType<IMoveGenerator>().Any()) { 317 string inversionMove = Operators.OfType<IMoveGenerator>().OfType<IPermutationInversionMoveOperator>().First().InversionMoveParameter.ActualName; 318 foreach (IPermutationInversionMoveOperator op in Operators.OfType<IPermutationInversionMoveOperator>()) 319 op.InversionMoveParameter.ActualName = inversionMove; 320 string translocationMove = Operators.OfType<IMoveGenerator>().OfType<IPermutationTranslocationMoveOperator>().First().TranslocationMoveParameter.ActualName; 321 foreach (IPermutationTranslocationMoveOperator op in Operators.OfType<IPermutationTranslocationMoveOperator>()) 322 op.TranslocationMoveParameter.ActualName = translocationMove; 323 string swapMove = Operators.OfType<IMoveGenerator>().OfType<IPermutationSwap2MoveOperator>().First().Swap2MoveParameter.ActualName; 324 foreach (IPermutationSwap2MoveOperator op in Operators.OfType<IPermutationSwap2MoveOperator>()) { 325 op.Swap2MoveParameter.ActualName = swapMove; 324 if (Operators.OfType<IMoveGenerator>().OfType<IPermutationInversionMoveOperator>().Any()) { 325 string inversionMove = Operators.OfType<IMoveGenerator>().OfType<IPermutationInversionMoveOperator>().First().InversionMoveParameter.ActualName; 326 foreach (IPermutationInversionMoveOperator op in Operators.OfType<IPermutationInversionMoveOperator>()) 327 op.InversionMoveParameter.ActualName = inversionMove; 328 } 329 if (Operators.OfType<IMoveGenerator>().OfType<IPermutationTranslocationMoveOperator>().Any()) { 330 string translocationMove = Operators.OfType<IMoveGenerator>().OfType<IPermutationTranslocationMoveOperator>().First().TranslocationMoveParameter.ActualName; 331 foreach (IPermutationTranslocationMoveOperator op in Operators.OfType<IPermutationTranslocationMoveOperator>()) 332 op.TranslocationMoveParameter.ActualName = translocationMove; 333 } 334 if (Operators.OfType<IMoveGenerator>().OfType<IPermutationSwap2MoveOperator>().Any()) { 335 string swapMove = Operators.OfType<IMoveGenerator>().OfType<IPermutationSwap2MoveOperator>().First().Swap2MoveParameter.ActualName; 336 foreach (IPermutationSwap2MoveOperator op in Operators.OfType<IPermutationSwap2MoveOperator>()) { 337 op.Swap2MoveParameter.ActualName = swapMove; 338 } 326 339 } 327 340 } … … 355 368 var weights = new DoubleMatrix(data.Weights); 356 369 var distances = new DoubleMatrix(data.Distances); 370 Name = data.Name; 371 Description = data.Description; 357 372 Load(weights, distances); 358 373 EvaluateAndLoadAssignment(data.BestKnownAssignment); … … 367 382 weights[i, (i + 1) % data.Dimension] = 1; 368 383 var distances = new DoubleMatrix(data.GetDistanceMatrix()); 384 Name = data.Name; 385 Description = data.Description; 369 386 Load(weights, distances); 370 387 EvaluateAndLoadAssignment(data.BestKnownTour);
Note: See TracChangeset
for help on using the changeset viewer.