Changeset 16310 for branches/2943_MOBasicProblem_MOCMAES/HeuristicLab.Problems.TestFunctions.MultiObjective/3.3/MultiObjectiveTestFunctionProblem.cs
- Timestamp:
- 11/20/18 14:53:51 (5 years ago)
- Location:
- branches/2943_MOBasicProblem_MOCMAES/HeuristicLab.Problems.TestFunctions.MultiObjective
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2943_MOBasicProblem_MOCMAES/HeuristicLab.Problems.TestFunctions.MultiObjective
- Property svn:mergeinfo changed (with no actual effect on merging)
-
branches/2943_MOBasicProblem_MOCMAES/HeuristicLab.Problems.TestFunctions.MultiObjective/3.3/MultiObjectiveTestFunctionProblem.cs
r16171 r16310 39 39 #region Parameter Properties 40 40 public new IValueParameter<BoolArray> MaximizationParameter { 41 get { return (IValueParameter<BoolArray>)Parameters[ "Maximization"]; }41 get { return (IValueParameter<BoolArray>)Parameters[MaximizationParameterName]; } 42 42 } 43 43 public IFixedValueParameter<IntValue> ProblemSizeParameter { … … 86 86 } 87 87 88 protected MultiObjectiveTestFunctionProblem(MultiObjectiveTestFunctionProblem original, Cloner cloner) 89 : base(original, cloner) { 88 protected MultiObjectiveTestFunctionProblem(MultiObjectiveTestFunctionProblem original, Cloner cloner) : base(original, cloner) { 90 89 RegisterEventHandlers(); 91 90 } … … 94 93 } 95 94 96 public MultiObjectiveTestFunctionProblem() 97 : base() { 95 public MultiObjectiveTestFunctionProblem() : base() { 98 96 Parameters.Add(new FixedValueParameter<IntValue>("ProblemSize", "The dimensionality of the problem instance (number of variables in the function).", new IntValue(2))); 99 97 Parameters.Add(new FixedValueParameter<IntValue>("Objectives", "The dimensionality of the solution vector (number of objectives).", new IntValue(2))); … … 130 128 public double[] CheckContraints(RealVector individual) { 131 129 var constrainedTestFunction = (IConstrainedTestFunction)TestFunction; 132 if (constrainedTestFunction != null) { 133 return constrainedTestFunction.CheckConstraints(individual, Objectives); 134 } 135 return new double[0]; 130 return constrainedTestFunction != null ? constrainedTestFunction.CheckConstraints(individual, Objectives) : new double[0]; 136 131 } 137 132 … … 169 164 ParameterizeAnalyzers(); 170 165 } 166 171 167 protected override void OnEvaluatorChanged() { 172 168 base.OnEvaluatorChanged(); … … 199 195 #region Helpers 200 196 private void InitializeOperators() { 201 Operators.Add(new CrowdingAnalyzer()); 202 Operators.Add(new GenerationalDistanceAnalyzer()); 203 Operators.Add(new InvertedGenerationalDistanceAnalyzer()); 204 Operators.Add(new HypervolumeAnalyzer()); 205 Operators.Add(new SpacingAnalyzer()); 197 Operators.Add(new Analysis.CrowdingAnalyzer()); 198 Operators.Add(new Analysis.GenerationalDistanceAnalyzer()); 199 Operators.Add(new Analysis.InvertedGenerationalDistanceAnalyzer()); 200 Operators.Add(new Analysis.HypervolumeAnalyzer()); 201 Operators.Add(new Analysis.SpacingAnalyzer()); 202 Operators.Add(new Analysis.TimelineAnalyzer()); 206 203 Operators.Add(new ScatterPlotAnalyzer()); 207 208 ParameterizeAnalyzers(); 209 } 210 211 private IEnumerable<IMultiObjectiveTestFunctionAnalyzer> Analyzers { 212 get { return Operators.OfType<IMultiObjectiveTestFunctionAnalyzer>(); } 213 } 204 ParameterizeAnalyzers(); 205 } 206 207 private IEnumerable<IMultiObjectiveTestFunctionAnalyzer> Analyzers => Operators.OfType<IMultiObjectiveTestFunctionAnalyzer>(); 214 208 215 209 private void ParameterizeAnalyzers() { … … 219 213 analyzer.TestFunctionParameter.ActualName = TestFunctionParameter.Name; 220 214 analyzer.BestKnownFrontParameter.ActualName = BestKnownFrontParameter.Name; 221 222 var scatterPlotAnalyzer = analyzer as ScatterPlotAnalyzer; 223 if (scatterPlotAnalyzer != null) { 215 if (analyzer is ScatterPlotAnalyzer scatterPlotAnalyzer) 224 216 scatterPlotAnalyzer.IndividualsParameter.ActualName = Encoding.Name; 225 }226 217 } 227 218 } 228 229 219 #endregion 230 220 }
Note: See TracChangeset
for help on using the changeset viewer.