Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
05/16/12 16:28:49 (12 years ago)
Author:
gkronber
Message:

merged r7609:7840 from trunk into time series branch

Location:
branches/HeuristicLab.TimeSeries
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • branches/HeuristicLab.TimeSeries

  • branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.QuadraticAssignment

  • branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.QuadraticAssignment/3.3/HeuristicLab.Problems.QuadraticAssignment-3.3.csproj

    r7615 r7842  
    200200      <Project>{3540E29E-4793-49E7-8EE2-FEA7F61C3994}</Project>
    201201      <Name>HeuristicLab.Problems.Instances-3.3</Name>
     202      <Private>False</Private>
    202203    </ProjectReference>
    203204  </ItemGroup>
  • branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.QuadraticAssignment/3.3/QuadraticAssignmentProblem.cs

    r7615 r7842  
    2121
    2222using System;
     23using System.Collections.Generic;
    2324using System.Drawing;
    2425using System.Linq;
     
    253254
    254255    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>()));
    256263      Operators.RemoveAll(x => x is ISingleObjectiveMoveEvaluator);
    257264      Operators.AddRange(ApplicationManager.Manager.GetInstances<IQAPMoveEvaluator>());
     
    315322      }
    316323      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          }
    326339        }
    327340      }
     
    355368      var weights = new DoubleMatrix(data.Weights);
    356369      var distances = new DoubleMatrix(data.Distances);
     370      Name = data.Name;
     371      Description = data.Description;
    357372      Load(weights, distances);
    358373      EvaluateAndLoadAssignment(data.BestKnownAssignment);
     
    367382        weights[i, (i + 1) % data.Dimension] = 1;
    368383      var distances = new DoubleMatrix(data.GetDistanceMatrix());
     384      Name = data.Name;
     385      Description = data.Description;
    369386      Load(weights, distances);
    370387      EvaluateAndLoadAssignment(data.BestKnownTour);
Note: See TracChangeset for help on using the changeset viewer.