Index: trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic/Analyzers/ValidationBestScaledSymbolicRegressionSolutionAnalyzer.cs
===================================================================
--- trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic/Analyzers/ValidationBestScaledSymbolicRegressionSolutionAnalyzer.cs	(revision 3925)
+++ trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic/Analyzers/ValidationBestScaledSymbolicRegressionSolutionAnalyzer.cs	(revision 3926)
@@ -117,13 +117,25 @@
 
     [Storable]
+    private UniformSubScopesProcessor subScopesProcessor;
+    [Storable]
+    private SymbolicRegressionSolutionLinearScaler linearScaler;
+    [Storable]
+    private SymbolicRegressionModelQualityAnalyzer modelQualityAnalyzer;
+    [Storable]
+    private SymbolicRegressionMeanSquaredErrorEvaluator validationMseEvaluator;
+    [Storable]
     private BestSymbolicRegressionSolutionAnalyzer bestSolutionAnalyzer;
     [Storable]
-    private UniformSubScopesProcessor subScopesProcessor;
+    private UniformSubScopesProcessor cleaningSubScopesProcessor;
+    [Storable]
+    private Assigner removeScaledExpressionTreeAssigner;
+    [Storable]
+    private BestQualityMemorizer bestKnownQualityMemorizer;
     [Storable]
     private BestAverageWorstQualityCalculator bestAvgWorstValidationQualityCalculator;
     [Storable]
-    private BestQualityMemorizer bestKnownQualityMemorizer;
-    [Storable]
-    private SymbolicRegressionModelQualityAnalyzer modelQualityAnalyzer;
+    private DataTableValuesCollector validationValuesCollector;
+    [Storable]
+    private ResultsCollector resultsCollector;
 
     public ValidationBestScaledSymbolicRegressionSolutionAnalyzer()
@@ -148,12 +160,14 @@
       #region operator initialization
       subScopesProcessor = new UniformSubScopesProcessor();
-      SymbolicRegressionSolutionLinearScaler linearScaler = new SymbolicRegressionSolutionLinearScaler();
+      linearScaler = new SymbolicRegressionSolutionLinearScaler();
       modelQualityAnalyzer = new SymbolicRegressionModelQualityAnalyzer();
-      SymbolicRegressionMeanSquaredErrorEvaluator validationMseEvaluator = new SymbolicRegressionMeanSquaredErrorEvaluator();
+      validationMseEvaluator = new SymbolicRegressionMeanSquaredErrorEvaluator();
       bestSolutionAnalyzer = new BestSymbolicRegressionSolutionAnalyzer();
+      cleaningSubScopesProcessor = new UniformSubScopesProcessor();
+      removeScaledExpressionTreeAssigner = new Assigner();
       bestKnownQualityMemorizer = new BestQualityMemorizer();
       bestAvgWorstValidationQualityCalculator = new BestAverageWorstQualityCalculator();
-      DataTableValuesCollector validationValuesCollector = new DataTableValuesCollector();
-      ResultsCollector resultsCollector = new ResultsCollector();
+      validationValuesCollector = new DataTableValuesCollector();
+      resultsCollector = new ResultsCollector();
       #endregion
 
@@ -197,4 +211,9 @@
       bestSolutionAnalyzer.UpperEstimationLimitParameter.ActualName = UpperEstimationLimitParameter.Name;
 
+      cleaningSubScopesProcessor.Depth.Value = SymbolicExpressionTreeParameter.Depth;
+
+      removeScaledExpressionTreeAssigner.LeftSideParameter.ActualName = ScaledSymbolicExpressionTreeParameterName;
+      removeScaledExpressionTreeAssigner.RightSideParameter.Value = new SymbolicExpressionTree();
+
       bestAvgWorstValidationQualityCalculator.AverageQualityParameter.ActualName = "Current average validation quality";
       bestAvgWorstValidationQualityCalculator.BestQualityParameter.ActualName = CurrentBestValidationQualityParameterName;
@@ -226,5 +245,7 @@
       subScopesProcessor.Successor = modelQualityAnalyzer;
       modelQualityAnalyzer.Successor = bestSolutionAnalyzer;
-      bestSolutionAnalyzer.Successor = bestAvgWorstValidationQualityCalculator;
+      bestSolutionAnalyzer.Successor = cleaningSubScopesProcessor;
+      cleaningSubScopesProcessor.Operator = removeScaledExpressionTreeAssigner;
+      cleaningSubScopesProcessor.Successor = bestAvgWorstValidationQualityCalculator;
       bestAvgWorstValidationQualityCalculator.Successor = bestKnownQualityMemorizer;
       bestKnownQualityMemorizer.Successor = validationValuesCollector;
@@ -252,4 +273,5 @@
     private void SymbolicExpressionTreeParameter_DepthChanged(object sender, EventArgs e) {
       subScopesProcessor.Depth.Value = SymbolicExpressionTreeParameter.Depth;
+      cleaningSubScopesProcessor.Depth.Value = SymbolicExpressionTreeParameter.Depth;
       bestSolutionAnalyzer.SymbolicExpressionTreeParameter.Depth = SymbolicExpressionTreeParameter.Depth;
       bestSolutionAnalyzer.QualityParameter.Depth = SymbolicExpressionTreeParameter.Depth;
