Index: trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic/BestValidationSymbolicRegressionSolutionVisualizer.cs
===================================================================
--- trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic/BestValidationSymbolicRegressionSolutionVisualizer.cs	(revision 3599)
+++ trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic/BestValidationSymbolicRegressionSolutionVisualizer.cs	(revision 3616)
@@ -42,5 +42,5 @@
   [Item("BestSymbolicExpressionTreeVisualizer", "An operator for visualizing the best symbolic regression solution based on the validation set.")]
   [StorableClass]
-  public sealed class BestValidationSymbolicRegressionSolutionVisualizer : SingleSuccessorOperator, ISingleObjectiveSolutionsVisualizer, ISolutionsVisualizer {
+  public sealed class BestValidationSymbolicRegressionSolutionVisualizer : SingleSuccessorOperator, IAnalyzer {
     private const string SymbolicExpressionTreeInterpreterParameterName = "SymbolicExpressionTreeInterpreter";
     private const string UpperEstimationLimitParameterName = "UpperEstimationLimit";
@@ -88,7 +88,4 @@
     public ILookupParameter<SymbolicRegressionSolution> BestValidationSolutionParameter {
       get { return (ILookupParameter<SymbolicRegressionSolution>)Parameters[BestValidationSolutionParameterName]; }
-    }
-    ILookupParameter ISolutionsVisualizer.VisualizationParameter {
-      get { return BestValidationSolutionParameter; }
     }
 
Index: trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic/SymbolicRegressionProblem.cs
===================================================================
--- trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic/SymbolicRegressionProblem.cs	(revision 3599)
+++ trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic/SymbolicRegressionProblem.cs	(revision 3616)
@@ -89,10 +89,4 @@
       get { return (ValueParameter<IntValue>)Parameters["MaxFunctionArguments"]; }
     }
-    public OptionalValueParameter<ISingleObjectiveSolutionsVisualizer> VisualizerParameter {
-      get { return (OptionalValueParameter<ISingleObjectiveSolutionsVisualizer>)Parameters["Visualizer"]; }
-    }
-    IParameter IProblem.VisualizerParameter {
-      get { return VisualizerParameter; }
-    }
     public OptionalValueParameter<DoubleValue> BestKnownQualityParameter {
       get { return (OptionalValueParameter<DoubleValue>)Parameters["BestKnownQuality"]; }
@@ -152,11 +146,4 @@
     public ISymbolicExpressionGrammar FunctionTreeGrammar {
       get { return (ISymbolicExpressionGrammar)FunctionTreeGrammarParameter.Value; }
-    }
-    public ISingleObjectiveSolutionsVisualizer Visualizer {
-      get { return VisualizerParameter.Value; }
-      set { VisualizerParameter.Value = value; }
-    }
-    ISolutionsVisualizer IProblem.Visualizer {
-      get { return VisualizerParameter.Value; }
     }
     public DoubleValue BestKnownQuality {
@@ -207,5 +194,4 @@
       Parameters.Add(new ValueParameter<IntValue>("MaxFunctionDefiningBranches", "Maximal number of automatically defined functions.", (IntValue)new IntValue(0).AsReadOnly()));
       Parameters.Add(new ValueParameter<IntValue>("MaxFunctionArguments", "Maximal number of arguments of automatically defined functions.", (IntValue)new IntValue(0).AsReadOnly()));
-      Parameters.Add(new ValueParameter<ISingleObjectiveSolutionsVisualizer>("Visualizer", "The operator which should be used to visualize symbolic regression solutions.", visualizer));
 
       creator.SymbolicExpressionTreeParameter.ActualName = "SymbolicRegressionModel";
@@ -240,5 +226,4 @@
       SolutionCreatorParameter.ValueChanged += new EventHandler(SolutionCreatorParameter_ValueChanged);
       EvaluatorParameter.ValueChanged += new EventHandler(EvaluatorParameter_ValueChanged);
-      VisualizerParameter.ValueChanged += new EventHandler(VisualizerParameter_ValueChanged);
     }
 
@@ -288,8 +273,4 @@
       ParameterizeVisualizer();
     }
-    protected virtual void OnVisualizerChanged(EventArgs e) {
-      ParameterizeVisualizer();
-      RaiseVisualizerChanged(e);
-    }
     #endregion
 
@@ -303,7 +284,4 @@
     private void EvaluatorParameter_ValueChanged(object sender, EventArgs e) {
       OnEvaluatorChanged(e);
-    }
-    private void VisualizerParameter_ValueChanged(object sender, EventArgs e) {
-      OnVisualizerChanged(e);
     }
     private void ArchitectureParameter_ValueChanged(object sender, EventArgs e) {
@@ -325,10 +303,4 @@
     private void RaiseEvaluatorChanged(EventArgs e) {
       var changed = EvaluatorChanged;
-      if (changed != null)
-        changed(this, e);
-    }
-    public event EventHandler VisualizerChanged;
-    private void RaiseVisualizerChanged(EventArgs e) {
-      var changed = VisualizerChanged;
       if (changed != null)
         changed(this, e);
@@ -394,15 +366,15 @@
 
     private void ParameterizeVisualizer() {
-      var solutionVisualizer = Visualizer as BestValidationSymbolicRegressionSolutionVisualizer;
-      if (solutionVisualizer != null) {
-        solutionVisualizer.SymbolicExpressionTreeParameter.ActualName = SolutionCreator.SymbolicExpressionTreeParameter.ActualName;
-        solutionVisualizer.DataAnalysisProblemDataParameter.ActualName = DataAnalysisProblemDataParameter.Name;
-        solutionVisualizer.UpperEstimationLimitParameter.ActualName = UpperEstimationLimitParameter.Name;
-        solutionVisualizer.LowerEstimationLimitParameter.ActualName = LowerEstimationLimitParameter.Name;
-        solutionVisualizer.QualityParameter.ActualName = Evaluator.QualityParameter.Name;
-        solutionVisualizer.SymbolicExpressionTreeInterpreterParameter.ActualName = SymbolicExpressionTreeInterpreterParameter.Name;
-        solutionVisualizer.ValidationSamplesStartParameter.Value = ValidationSamplesStart;
-        solutionVisualizer.ValidationSamplesEndParameter.Value = ValidationSamplesEnd;
-      }
+      //var solutionVisualizer = Visualizer as BestValidationSymbolicRegressionSolutionVisualizer;
+      //if (solutionVisualizer != null) {
+      //  solutionVisualizer.SymbolicExpressionTreeParameter.ActualName = SolutionCreator.SymbolicExpressionTreeParameter.ActualName;
+      //  solutionVisualizer.DataAnalysisProblemDataParameter.ActualName = DataAnalysisProblemDataParameter.Name;
+      //  solutionVisualizer.UpperEstimationLimitParameter.ActualName = UpperEstimationLimitParameter.Name;
+      //  solutionVisualizer.LowerEstimationLimitParameter.ActualName = LowerEstimationLimitParameter.Name;
+      //  solutionVisualizer.QualityParameter.ActualName = Evaluator.QualityParameter.Name;
+      //  solutionVisualizer.SymbolicExpressionTreeInterpreterParameter.ActualName = SymbolicExpressionTreeInterpreterParameter.Name;
+      //  solutionVisualizer.ValidationSamplesStartParameter.Value = ValidationSamplesStart;
+      //  solutionVisualizer.ValidationSamplesEndParameter.Value = ValidationSamplesEnd;
+      //}
     }
 
