Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
03/30/11 18:04:03 (13 years ago)
Author:
gkronber
Message:

#1453: Added an ErrorState property to online evaluators to indicate if the result value is valid or if there has been an error in the calculation. Adapted all classes that use one of the online evaluators to check this property.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/MultiObjective/SymbolicRegressionMultiObjectivePearsonRSquaredTreeSizeEvaluator.cs

    r5851 r5894  
    5858      IEnumerable<double> estimatedValues = interpreter.GetSymbolicExpressionTreeValues(solution, problemData.Dataset, rows);
    5959      IEnumerable<double> originalValues = problemData.Dataset.GetEnumeratedVariableValues(problemData.TargetVariable, rows);
    60       double r2 = OnlinePearsonsRSquaredEvaluator.Calculate(estimatedValues, originalValues);
    61       return new double[] { double.IsNaN(r2) ? 0.0 : r2, solution.Length };
     60      OnlineEvaluatorError errorState;
     61      double r2 = OnlinePearsonsRSquaredEvaluator.Calculate(estimatedValues, originalValues, out errorState);
     62      if (errorState != OnlineEvaluatorError.None) r2 = 0.0;
     63      return new double[] { r2, solution.Length };
    6264    }
    6365
     
    7274      SymbolicDataAnalysisTreeInterpreterParameter.ExecutionContext = null;
    7375      EstimationLimitsParameter.ExecutionContext = null;
    74       EvaluatedNodesParameter.ExecutionContext = null; 
     76      EvaluatedNodesParameter.ExecutionContext = null;
    7577
    7678      return quality;
Note: See TracChangeset for help on using the changeset viewer.