- Timestamp:
- 07/23/20 17:39:40 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2521_ProblemRefactoring/HeuristicLab.Problems.LinearAssignment/3.3/LinearAssignmentProblem.cs
r17695 r17696 25 25 using System.Threading; 26 26 using HEAL.Attic; 27 using HeuristicLab.Analysis;28 27 using HeuristicLab.Common; 29 28 using HeuristicLab.Core; … … 31 30 using HeuristicLab.Encodings.PermutationEncoding; 32 31 using HeuristicLab.Optimization; 33 using HeuristicLab.Optimization.Operators;34 32 using HeuristicLab.Parameters; 35 using HeuristicLab.PluginInfrastructure;36 33 37 34 namespace HeuristicLab.Problems.LinearAssignment { … … 119 116 Costs[2, 0] = 5; Costs[2, 1] = 5; Costs[2, 2] = 1; 120 117 121 InitializeOperators(); 122 Parameterize(); 118 Operators.RemoveAll(x => x is IMoveOperator); 123 119 AttachEventHandlers(); 124 120 } … … 194 190 195 191 #region Events 196 protected override void OnOperatorsChanged() {197 base.OnOperatorsChanged();198 Parameterize();199 }200 192 private void Costs_RowsChanged(object sender, EventArgs e) { 201 193 if (Costs.Rows != Costs.Columns) { 202 194 ((IStringConvertibleMatrix)Costs).Columns = Costs.Rows; 203 Parameterize();195 Dimension = Costs.Rows; 204 196 } 205 197 } … … 207 199 if (Costs.Rows != Costs.Columns) { 208 200 ((IStringConvertibleMatrix)Costs).Rows = Costs.Columns; 209 Parameterize();201 Dimension = Costs.Rows; 210 202 } 211 203 } 212 204 private void Costs_Reset(object sender, EventArgs e) { 213 Parameterize(); 214 } 215 private void SolutionCreator_PermutationParameter_ActualNameChanged(object sender, EventArgs e) { 216 Parameterize(); 205 Dimension = Costs.Rows; 217 206 } 218 207 #endregion … … 229 218 Costs.Reset += new EventHandler(Costs_Reset); 230 219 } 231 232 private void InitializeOperators() {233 Operators.AddRange(ApplicationManager.Manager.GetInstances<IPermutationOperator>());234 Operators.RemoveAll(x => x is IMoveOperator);235 236 Operators.Add(new HammingSimilarityCalculator());237 Operators.Add(new QualitySimilarityCalculator());238 Operators.Add(new PopulationSimilarityAnalyzer(Operators.OfType<ISolutionSimilarityCalculator>()));239 }240 241 private void Parameterize() {242 if (Costs.Rows != Dimension) Dimension = Costs.Rows;243 foreach (var similarityCalculator in Operators.OfType<ISolutionSimilarityCalculator>()) {244 similarityCalculator.SolutionVariableName = Encoding.Name;245 similarityCalculator.QualityVariableName = Evaluator.QualityParameter.ActualName;246 }247 }248 220 #endregion 249 221 }
Note: See TracChangeset
for help on using the changeset viewer.