Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
03/16/11 19:29:57 (14 years ago)
Author:
gkronber
Message:

#1418 fixed evaluator call from validation analyzers, fixed bugs in interactive simplifier view and added apply linear scaling flag to analyzers.

Location:
branches/DataAnalysis Refactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • branches/DataAnalysis Refactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/MultiObjective/SymbolicClassificationMultiObjectiveMeanSquaredErrorTreeSizeEvaluator.cs

    r5624 r5722  
    6060
    6161    public override double[] Evaluate(IExecutionContext context, ISymbolicExpressionTree tree, IClassificationProblemData problemData, IEnumerable<int> rows) {
    62       return Calculate(SymbolicDataAnalysisTreeInterpreter, tree, LowerEstimationLimit.Value, UpperEstimationLimit.Value, problemData, rows);
     62      SymbolicDataAnalysisTreeInterpreterParameter.ExecutionContext = context;
     63      LowerEstimationLimitParameter.ExecutionContext = context;
     64      UpperEstimationLimitParameter.ExecutionContext = context;
     65
     66      double[] quality = Calculate(SymbolicDataAnalysisTreeInterpreter, tree, LowerEstimationLimit.Value, UpperEstimationLimit.Value, problemData, rows);
     67
     68      SymbolicDataAnalysisTreeInterpreterParameter.ExecutionContext = null;
     69      LowerEstimationLimitParameter.ExecutionContext = null;
     70      UpperEstimationLimitParameter.ExecutionContext = null;
     71
     72      return quality;
    6373    }
    6474  }
  • branches/DataAnalysis Refactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/MultiObjective/SymbolicClassificationMultiObjectivePearsonRSquaredTreeSizeEvaluator.cs

    r5624 r5722  
    3838
    3939    public override double[] Evaluate(IExecutionContext context, ISymbolicExpressionTree tree, IClassificationProblemData problemData, IEnumerable<int> rows) {
    40       return Calculate(SymbolicDataAnalysisTreeInterpreter, tree, LowerEstimationLimit.Value, UpperEstimationLimit.Value, problemData, rows);
     40      SymbolicDataAnalysisTreeInterpreterParameter.ExecutionContext = context;
     41      LowerEstimationLimitParameter.ExecutionContext = context;
     42      UpperEstimationLimitParameter.ExecutionContext = context;
     43
     44      double[] quality = Calculate(SymbolicDataAnalysisTreeInterpreter, tree, LowerEstimationLimit.Value, UpperEstimationLimit.Value, problemData, rows);
     45
     46      SymbolicDataAnalysisTreeInterpreterParameter.ExecutionContext = null;
     47      LowerEstimationLimitParameter.ExecutionContext = null;
     48      UpperEstimationLimitParameter.ExecutionContext = null;
     49
     50      return quality;
    4151    }
    4252  }
  • branches/DataAnalysis Refactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/MultiObjective/SymbolicClassificationMultiObjectiveProblem.cs

    r5720 r5722  
    7171      InitializeOperators();
    7272      UpdateEstimationLimits();
     73      UpdateDatasetPartitions();
    7374    }
    7475
  • branches/DataAnalysis Refactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/MultiObjective/SymbolicClassificationMultiObjectiveTrainingBestSolutionAnalyzer.cs

    r5720 r5722  
    4343    private const string UpperEstimationLimitParameterName = "UpperEstimationLimit";
    4444    private const string LowerEstimationLimitParameterName = "LowerEstimationLimit";
     45    private const string ApplyLinearScalingParameterName = "ApplyLinearScaling";
    4546    #region parameter properties
    4647    public ILookupParameter<IClassificationProblemData> ProblemDataParameter {
     
    5657    public IValueLookupParameter<DoubleValue> LowerEstimationLimitParameter {
    5758      get { return (IValueLookupParameter<DoubleValue>)Parameters[LowerEstimationLimitParameterName]; }
     59    }
     60    public IValueParameter<BoolValue> ApplyLinearScalingParameter {
     61      get { return (IValueParameter<BoolValue>)Parameters[ApplyLinearScalingParameterName]; }
    5862    }
    5963    #endregion
     
    7175      get { return LowerEstimationLimitParameter.ActualValue; }
    7276    }
     77    public BoolValue ApplyLinearScaling {
     78      get { return ApplyLinearScalingParameter.Value; }
     79    }
    7380    #endregion
    7481
     
    8289      Parameters.Add(new ValueLookupParameter<DoubleValue>(UpperEstimationLimitParameterName, "The upper limit for the estimated values produced by the symbolic classification model."));
    8390      Parameters.Add(new ValueLookupParameter<DoubleValue>(LowerEstimationLimitParameterName, "The lower limit for the estimated values produced by the symbolic classification model."));
     91      Parameters.Add(new ValueParameter<BoolValue>(ApplyLinearScalingParameterName, "Flag that indicates if the produced symbolic classification solution should be linearly scaled.", new BoolValue(false)));
    8492    }
    8593    public override IDeepCloneable Clone(Cloner cloner) {
  • branches/DataAnalysis Refactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/MultiObjective/SymbolicClassificationMultiObjectiveValidationBestSolutionAnalyzer.cs

    r5720 r5722  
    4141    private const string UpperEstimationLimitParameterName = "UpperEstimationLimit";
    4242    private const string LowerEstimationLimitParameterName = "LowerEstimationLimit";
     43    private const string ApplyLinearScalingParameterName = "ApplyLinearScaling";
    4344
    4445    #region parameter properties
     
    4950    public IValueLookupParameter<DoubleValue> LowerEstimationLimitParameter {
    5051      get { return (IValueLookupParameter<DoubleValue>)Parameters[LowerEstimationLimitParameterName]; }
     52    }
     53    public IValueParameter<BoolValue> ApplyLinearScalingParameter {
     54      get { return (IValueParameter<BoolValue>)Parameters[ApplyLinearScalingParameterName]; }
    5155    }
    5256    #endregion
     
    5963      get { return LowerEstimationLimitParameter.ActualValue; }
    6064    }
     65    public BoolValue ApplyLinearScaling {
     66      get { return ApplyLinearScalingParameter.Value; }
     67    }
    6168    #endregion
    6269    [StorableConstructor]
     
    6774      Parameters.Add(new ValueLookupParameter<DoubleValue>(UpperEstimationLimitParameterName, "The upper limit for the estimated values produced by the symbolic classification model."));
    6875      Parameters.Add(new ValueLookupParameter<DoubleValue>(LowerEstimationLimitParameterName, "The lower limit for the estimated values produced by the symbolic classification model."));
     76      Parameters.Add(new ValueParameter<BoolValue>(ApplyLinearScalingParameterName, "Flag that indicates if the produced symbolic classification solution should be linearly scaled.", new BoolValue(false)));
    6977    }
    7078    public override IDeepCloneable Clone(Cloner cloner) {
  • branches/DataAnalysis Refactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/SingleObjective/SymbolicClassificationSingleObjectiveMeanSquaredErrorEvaluator.cs

    r5624 r5722  
    5959
    6060    public override double Evaluate(IExecutionContext context, ISymbolicExpressionTree tree, IClassificationProblemData problemData, IEnumerable<int> rows) {
    61       return Calculate(SymbolicDataAnalysisTreeInterpreter, tree, LowerEstimationLimit.Value, UpperEstimationLimit.Value, problemData, rows);
     61      SymbolicDataAnalysisTreeInterpreterParameter.ExecutionContext = context;
     62      LowerEstimationLimitParameter.ExecutionContext = context;
     63      UpperEstimationLimitParameter.ExecutionContext = context;
     64     
     65      double mse = Calculate(SymbolicDataAnalysisTreeInterpreter, tree, LowerEstimationLimit.Value, UpperEstimationLimit.Value, problemData, rows);
     66
     67      SymbolicDataAnalysisTreeInterpreterParameter.ExecutionContext = null;
     68      LowerEstimationLimitParameter.ExecutionContext = null;
     69      UpperEstimationLimitParameter.ExecutionContext = null;
     70
     71      return mse;
    6272    }
    6373  }
  • branches/DataAnalysis Refactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/SingleObjective/SymbolicClassificationSingleObjectivePearsonRSquaredEvaluator.cs

    r5624 r5722  
    5858
    5959    public override double Evaluate(IExecutionContext context, ISymbolicExpressionTree tree, IClassificationProblemData problemData, IEnumerable<int> rows) {
    60       return Calculate(SymbolicDataAnalysisTreeInterpreter, tree, LowerEstimationLimit.Value, UpperEstimationLimit.Value, problemData, rows);
     60      SymbolicDataAnalysisTreeInterpreterParameter.ExecutionContext = context;
     61      LowerEstimationLimitParameter.ExecutionContext = context;
     62      UpperEstimationLimitParameter.ExecutionContext = context;
     63
     64      double r2 = Calculate(SymbolicDataAnalysisTreeInterpreter, tree, LowerEstimationLimit.Value, UpperEstimationLimit.Value, problemData, rows);
     65
     66      SymbolicDataAnalysisTreeInterpreterParameter.ExecutionContext = null;
     67      LowerEstimationLimitParameter.ExecutionContext = null;
     68      UpperEstimationLimitParameter.ExecutionContext = null;
     69
     70      return r2;
    6171    }
    6272  }
  • branches/DataAnalysis Refactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/SingleObjective/SymbolicClassificationSingleObjectiveProblem.cs

    r5720 r5722  
    7070      InitializeOperators();
    7171      UpdateEstimationLimits();
     72      UpdateDatasetPartitions();
    7273    }
    7374
  • branches/DataAnalysis Refactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/SingleObjective/SymbolicClassificationSingleObjectiveTrainingBestSolutionAnalyzer.cs

    r5720 r5722  
    4343    private const string UpperEstimationLimitParameterName = "UpperEstimationLimit";
    4444    private const string LowerEstimationLimitParameterName = "LowerEstimationLimit";
     45    private const string ApplyLinearScalingParameterName = "ApplyLinearScaling";
    4546    #region parameter properties
    4647    public ILookupParameter<IClassificationProblemData> ProblemDataParameter {
     
    5657    public IValueLookupParameter<DoubleValue> LowerEstimationLimitParameter {
    5758      get { return (IValueLookupParameter<DoubleValue>)Parameters[LowerEstimationLimitParameterName]; }
     59    }
     60    public IValueParameter<BoolValue> ApplyLinearScalingParameter {
     61      get { return (IValueParameter<BoolValue>)Parameters[ApplyLinearScalingParameterName]; }
    5862    }
    5963    #endregion
     
    7175      get { return LowerEstimationLimitParameter.ActualValue; }
    7276    }
     77    public BoolValue ApplyLinearScaling {
     78      get { return ApplyLinearScalingParameter.Value; }
     79    }
    7380    #endregion
    7481
     
    8289      Parameters.Add(new ValueLookupParameter<DoubleValue>(UpperEstimationLimitParameterName, "The upper limit for the estimated values produced by the symbolic classification model."));
    8390      Parameters.Add(new ValueLookupParameter<DoubleValue>(LowerEstimationLimitParameterName, "The lower limit for the estimated values produced by the symbolic classification model."));
     91      Parameters.Add(new ValueParameter<BoolValue>(ApplyLinearScalingParameterName, "Flag that indicates if the produced symbolic classification solution should be linearly scaled.", new BoolValue(false)));
    8492    }
    8593    public override IDeepCloneable Clone(Cloner cloner) {
  • branches/DataAnalysis Refactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/SingleObjective/SymbolicClassificationSingleObjectiveValidationBestSolutionAnalyzer.cs

    r5720 r5722  
    4141    private const string UpperEstimationLimitParameterName = "UpperEstimationLimit";
    4242    private const string LowerEstimationLimitParameterName = "LowerEstimationLimit";
     43    private const string ApplyLinearScalingParameterName = "ApplyLinearScaling";
    4344
    4445    #region parameter properties
     
    4950    public IValueLookupParameter<DoubleValue> LowerEstimationLimitParameter {
    5051      get { return (IValueLookupParameter<DoubleValue>)Parameters[LowerEstimationLimitParameterName]; }
     52    }
     53
     54    public IValueParameter<BoolValue> ApplyLinearScalingParameter {
     55      get { return (IValueParameter<BoolValue>)Parameters[ApplyLinearScalingParameterName]; }
    5156    }
    5257    #endregion
     
    5964      get { return LowerEstimationLimitParameter.ActualValue; }
    6065    }
     66    public BoolValue ApplyLinearScaling {
     67      get { return ApplyLinearScalingParameter.Value; }
     68    }
    6169    #endregion
    6270    [StorableConstructor]
     
    6775      Parameters.Add(new ValueLookupParameter<DoubleValue>(UpperEstimationLimitParameterName, "The upper limit for the estimated values produced by the symbolic classification model."));
    6876      Parameters.Add(new ValueLookupParameter<DoubleValue>(LowerEstimationLimitParameterName, "The lower limit for the estimated values produced by the symbolic classification model."));
     77      Parameters.Add(new ValueParameter<BoolValue>(ApplyLinearScalingParameterName, "Flag that indicates if the produced symbolic classification solution should be linearly scaled.", new BoolValue(false)));
    6978    }
    7079    public override IDeepCloneable Clone(Cloner cloner) {
Note: See TracChangeset for help on using the changeset viewer.