Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
11/20/18 14:53:51 (5 years ago)
Author:
bwerth
Message:

#2943 worked on MOBasicProblem and MOAnalyzers

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  
    3939    #region Parameter Properties
    4040    public new IValueParameter<BoolArray> MaximizationParameter {
    41       get { return (IValueParameter<BoolArray>)Parameters["Maximization"]; }
     41      get { return (IValueParameter<BoolArray>)Parameters[MaximizationParameterName]; }
    4242    }
    4343    public IFixedValueParameter<IntValue> ProblemSizeParameter {
     
    8686    }
    8787
    88     protected MultiObjectiveTestFunctionProblem(MultiObjectiveTestFunctionProblem original, Cloner cloner)
    89       : base(original, cloner) {
     88    protected MultiObjectiveTestFunctionProblem(MultiObjectiveTestFunctionProblem original, Cloner cloner) : base(original, cloner) {
    9089      RegisterEventHandlers();
    9190    }
     
    9493    }
    9594
    96     public MultiObjectiveTestFunctionProblem()
    97       : base() {
     95    public MultiObjectiveTestFunctionProblem() : base() {
    9896      Parameters.Add(new FixedValueParameter<IntValue>("ProblemSize", "The dimensionality of the problem instance (number of variables in the function).", new IntValue(2)));
    9997      Parameters.Add(new FixedValueParameter<IntValue>("Objectives", "The dimensionality of the solution vector (number of objectives).", new IntValue(2)));
     
    130128    public double[] CheckContraints(RealVector individual) {
    131129      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];
    136131    }
    137132
     
    169164      ParameterizeAnalyzers();
    170165    }
     166
    171167    protected override void OnEvaluatorChanged() {
    172168      base.OnEvaluatorChanged();
     
    199195    #region Helpers
    200196    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());
    206203      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>();
    214208
    215209    private void ParameterizeAnalyzers() {
     
    219213        analyzer.TestFunctionParameter.ActualName = TestFunctionParameter.Name;
    220214        analyzer.BestKnownFrontParameter.ActualName = BestKnownFrontParameter.Name;
    221 
    222         var scatterPlotAnalyzer = analyzer as ScatterPlotAnalyzer;
    223         if (scatterPlotAnalyzer != null) {
     215        if (analyzer is ScatterPlotAnalyzer scatterPlotAnalyzer)
    224216          scatterPlotAnalyzer.IndividualsParameter.ActualName = Encoding.Name;
    225         }
    226217      }
    227218    }
    228 
    229219    #endregion
    230220  }
Note: See TracChangeset for help on using the changeset viewer.