Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
05/18/20 18:55:08 (4 years ago)
Author:
abeham
Message:

#2521: worked on refactoring, worked a lot on binary encoding / problems

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2521_ProblemRefactoring/HeuristicLab.Problems.QuadraticAssignment/3.3/QuadraticAssignmentProblem.cs

    r17382 r17544  
    102102      LowerBoundParameter = cloner.Clone(original.LowerBoundParameter);
    103103      AverageQualityParameter = cloner.Clone(original.AverageQualityParameter);
    104       RegisterEventHandlers();
    105104    }
    106105    public QuadraticAssignmentProblem()
     
    133132
    134133      InitializeOperators();
    135       RegisterEventHandlers();
    136134    }
    137135
     
    155153    }
    156154
    157     [StorableHook(HookType.AfterDeserialization)]
    158     private void AfterDeserialization() {
    159       // BackwardsCompatibility3.3
    160       #region Backwards compatible code, remove with 3.4
    161       if (BestKnownSolutionsParameter == null)
    162         BestKnownSolutionsParameter = (IValueParameter<ItemSet<Permutation>>)Parameters["BestKnownSolutions"];
    163       if (BestKnownSolutionParameter == null)
    164         BestKnownSolutionParameter = (IValueParameter<Permutation>)Parameters["BestKnownSolution"];
    165       if (WeightsParameter == null)
    166         WeightsParameter = (IValueParameter<DoubleMatrix>)Parameters["Weights"];
    167       if (DistancesParameter == null)
    168         DistancesParameter = (IValueParameter<DoubleMatrix>)Parameters["Distances"];
    169       if (LowerBoundParameter == null)
    170         LowerBoundParameter = (IValueParameter<DoubleValue>)Parameters["LowerBound"];
    171       if (AverageQualityParameter == null)
    172         AverageQualityParameter = (IValueParameter<DoubleValue>)Parameters["AverageQuality"];
    173       #endregion
    174       RegisterEventHandlers();
    175     }
    176 
    177155    #region Events
    178156    protected override void OnEncodingChanged() {
    179157      base.OnEncodingChanged();
    180       Encoding.Length = Weights.Rows;
     158      Dimension = Weights.Rows;
    181159      Parameterize();
    182160    }
     
    191169    #endregion
    192170
    193     private void RegisterEventHandlers() {
    194       Encoding.LengthParameter.Value.ValueChanged += EncodingLengthOnChanged;
    195     }
    196 
    197     private void EncodingLengthOnChanged(object sender, EventArgs e) {
    198       if (Encoding.Length != Weights.Rows) Encoding.Length = Weights.Rows;
     171    protected override void DimensionOnChanged() {
     172      base.DimensionOnChanged();
     173      if (Dimension != Weights.Rows) Dimension = Weights.Rows;
    199174    }
    200175
     
    354329      Weights = weights;
    355330      Distances = distances;
    356       Encoding.Length = weights.Rows;
     331      Dimension = weights.Rows;
    357332
    358333      BestKnownQualityParameter.Value = null;
Note: See TracChangeset for help on using the changeset viewer.