Changeset 3800
- Timestamp:
- 05/13/10 20:24:45 (15 years ago)
- Location:
- trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic/Analyzers/ValidationBestScaledSymbolicRegressionSolutionAnalyzer.cs
r3790 r3800 51 51 private const string SamplesStartParameterName = "SamplesStart"; 52 52 private const string SamplesEndParameterName = "SamplesEnd"; 53 private const string QualityParameterName = "ScaledQuality"; 53 private const string QualityParameterName = "Quality"; 54 private const string ScaledQualityParameterName = "ScaledQuality"; 54 55 private const string UpperEstimationLimitParameterName = "UpperEstimationLimit"; 55 56 private const string LowerEstimationLimitParameterName = "LowerEstimationLimit"; … … 65 66 get { return (ScopeTreeLookupParameter<SymbolicExpressionTree>)Parameters[SymbolicExpressionTreeParameterName]; } 66 67 } 68 public ScopeTreeLookupParameter<DoubleValue> QualityParameter { 69 get { return (ScopeTreeLookupParameter<DoubleValue>)Parameters[QualityParameterName]; } 70 } 67 71 public IValueLookupParameter<ISymbolicExpressionTreeInterpreter> SymbolicExpressionTreeInterpreterParameter { 68 72 get { return (IValueLookupParameter<ISymbolicExpressionTreeInterpreter>)Parameters[SymbolicExpressionTreeInterpreterParameterName]; } … … 102 106 [Storable] 103 107 private BestAverageWorstQualityCalculator bestAvgWorstValidationQualityCalculator; 108 [Storable] 109 private BestQualityMemorizer bestKnownQualityMemorizer; 104 110 105 111 public ValidationBestScaledSymbolicRegressionSolutionAnalyzer() 106 112 : base() { 107 113 Parameters.Add(new ScopeTreeLookupParameter<SymbolicExpressionTree>(SymbolicExpressionTreeParameterName, "The symbolic expression trees to analyze.")); 114 Parameters.Add(new ScopeTreeLookupParameter<DoubleValue>(QualityParameterName, "The quality of the symbolic expression trees to analyze.")); 108 115 Parameters.Add(new ValueLookupParameter<ISymbolicExpressionTreeInterpreter>(SymbolicExpressionTreeInterpreterParameterName, "The interpreter that should be used for the analysis of symbolic expression trees.")); 109 116 Parameters.Add(new ValueLookupParameter<DataAnalysisProblemData>(ProblemDataParameterName, "The problem data for which the symbolic expression tree is a solution.")); … … 122 129 SymbolicRegressionMeanSquaredErrorEvaluator validationMseEvaluator = new SymbolicRegressionMeanSquaredErrorEvaluator(); 123 130 bestSolutionAnalyzer = new BestSymbolicRegressionSolutionAnalyzer(); 124 BestQualityMemorizerbestKnownQualityMemorizer = new BestQualityMemorizer();125 131 bestKnownQualityMemorizer = new BestQualityMemorizer(); 132 bestAvgWorstValidationQualityCalculator = new BestAverageWorstQualityCalculator(); 126 133 DataTableValuesCollector validationValuesCollector = new DataTableValuesCollector(); 127 134 ResultsCollector resultsCollector = new ResultsCollector(); … … 140 147 validationMseEvaluator.SymbolicExpressionTreeParameter.ActualName = ScaledSymbolicExpressionTreeParameterName; 141 148 validationMseEvaluator.SymbolicExpressionTreeInterpreterParameter.ActualName = SymbolicExpressionTreeInterpreterParameter.Name; 142 validationMseEvaluator.QualityParameter.ActualName = QualityParameterName;149 validationMseEvaluator.QualityParameter.ActualName = ScaledQualityParameterName; 143 150 validationMseEvaluator.RegressionProblemDataParameter.ActualName = ProblemDataParameter.Name; 144 151 validationMseEvaluator.SamplesStartParameter.ActualName = SamplesStartParameter.Name; … … 149 156 bestSolutionAnalyzer.LowerEstimationLimitParameter.ActualName = LowerEstimationLimitParameter.Name; 150 157 bestSolutionAnalyzer.ProblemDataParameter.ActualName = ProblemDataParameter.Name; 151 bestSolutionAnalyzer.QualityParameter.ActualName = QualityParameterName;158 bestSolutionAnalyzer.QualityParameter.ActualName = ScaledQualityParameterName; 152 159 bestSolutionAnalyzer.ResultsParameter.ActualName = ResultsParameter.Name; 153 160 bestSolutionAnalyzer.SymbolicExpressionTreeInterpreterParameter.ActualName = SymbolicExpressionTreeInterpreterParameter.Name; … … 159 166 bestAvgWorstValidationQualityCalculator.BestQualityParameter.ActualName = CurrentBestValidationQualityParameterName; 160 167 bestAvgWorstValidationQualityCalculator.MaximizationParameter.Value = new BoolValue(false); 161 bestAvgWorstValidationQualityCalculator.QualityParameter.ActualName = QualityParameterName;168 bestAvgWorstValidationQualityCalculator.QualityParameter.ActualName = ScaledQualityParameterName; 162 169 bestAvgWorstValidationQualityCalculator.QualityParameter.Depth = SymbolicExpressionTreeParameter.Depth; 163 170 bestAvgWorstValidationQualityCalculator.WorstQualityParameter.ActualName = "Current worst validation quality"; … … 165 172 bestKnownQualityMemorizer.BestQualityParameter.ActualName = BestKnownQualityParameterName; 166 173 bestKnownQualityMemorizer.MaximizationParameter.Value = new BoolValue(false); 167 bestKnownQualityMemorizer.QualityParameter.ActualName = CurrentBestValidationQualityParameterName;168 bestKnownQualityMemorizer.QualityParameter.Depth = 0;174 bestKnownQualityMemorizer.QualityParameter.ActualName = QualityParameter.Name; 175 bestKnownQualityMemorizer.QualityParameter.Depth = QualityParameter.Depth; 169 176 170 177 validationValuesCollector.DataTableParameter.ActualName = "Validation quality"; … … 213 220 bestSolutionAnalyzer.QualityParameter.Depth = SymbolicExpressionTreeParameter.Depth; 214 221 bestAvgWorstValidationQualityCalculator.QualityParameter.Depth = SymbolicExpressionTreeParameter.Depth; 222 bestKnownQualityMemorizer.QualityParameter.Depth = SymbolicExpressionTreeParameter.Depth; 215 223 } 216 224 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic/SymbolicRegressionProblem.cs
r3791 r3800 247 247 protected override void OnDataAnalysisProblemChanged(EventArgs e) { 248 248 base.OnDataAnalysisProblemChanged(e); 249 BestKnownQualityParameter.Value = null; 249 250 // paritions could be changed 250 251 ParameterizeEvaluator(); … … 403 404 bestValidationSolutionAnalyzer.SamplesEndParameter.Value = ValidationSamplesEnd; 404 405 bestValidationSolutionAnalyzer.BestKnownQualityParameter.ActualName = BestKnownQualityParameter.Name; 406 bestValidationSolutionAnalyzer.QualityParameter.ActualName = Evaluator.QualityParameter.ActualName; 405 407 } 406 408 var varFreqAnalyzer = analyzer as SymbolicRegressionVariableFrequencyAnalyzer;
Note: See TracChangeset
for help on using the changeset viewer.