Index: /stable/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views/3.4/SymbolicRegressionSolutionErrorCharacteristicsCurveView.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views/3.4/SymbolicRegressionSolutionErrorCharacteristicsCurveView.cs	(revision 18021)
+++ /stable/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views/3.4/SymbolicRegressionSolutionErrorCharacteristicsCurveView.cs	(revision 18022)
@@ -26,4 +26,5 @@
 using HeuristicLab.Algorithms.DataAnalysis;
 using HeuristicLab.MainForm;
+using HeuristicLab.PluginInfrastructure;
 using HeuristicLab.Problems.DataAnalysis.Views;
 
@@ -43,5 +44,4 @@
     private IRegressionSolution CreateLinearRegressionSolution() {
       if (Content == null) throw new InvalidOperationException();
-      double rmse, cvRmsError;
       var problemData = (IRegressionProblemData)ProblemData.Clone();
       if (!problemData.TrainingIndices.Any()) return null; // don't create an LR model if the problem does not have a training set (e.g. loaded into an existing model)
@@ -87,7 +87,14 @@
       newProblemData.TestPartition.End = problemData.TestPartition.End;
 
-      var solution = LinearRegression.CreateLinearRegressionSolution(newProblemData, out rmse, out cvRmsError);
-      solution.Name = "Baseline (linear subset)";
-      return solution;
+      try {
+        var solution = LinearRegression.CreateSolution(newProblemData, out _, out _);
+        solution.Name = "Baseline (linear subset)";
+        return solution;
+      } catch (NotSupportedException e) {
+        ErrorHandling.ShowErrorDialog("Could not create a linear regression solution.", e);
+      } catch (ArgumentException e) {
+        ErrorHandling.ShowErrorDialog("Could not create a linear regression solution.", e);
+      }
+      return null;
     }
 
@@ -99,5 +106,6 @@
       if (Content.Model.SymbolicExpressionTree.IterateNodesPrefix().OfType<LaggedVariableTreeNode>().Any()) yield break;
 
-      yield return CreateLinearRegressionSolution();
+      var linearRegressionSolution = CreateLinearRegressionSolution();
+      if (linearRegressionSolution != null) yield return linearRegressionSolution;
     }
   }
Index: /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/HeuristicLab.Problems.DataAnalysis.Views-3.4.csproj
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/HeuristicLab.Problems.DataAnalysis.Views-3.4.csproj	(revision 18021)
+++ /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/HeuristicLab.Problems.DataAnalysis.Views-3.4.csproj	(revision 18022)
@@ -563,14 +563,4 @@
       <Private>False</Private>
     </ProjectReference>
-    <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic.Regression\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic.Regression-3.4.csproj">
-      <Project>{5AC82412-911B-4FA2-A013-EDC5E3F3FCC2}</Project>
-      <Name>HeuristicLab.Problems.DataAnalysis.Symbolic.Regression-3.4</Name>
-      <Private>False</Private>
-    </ProjectReference>
-    <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj">
-      <Project>{3D28463F-EC96-4D82-AFEE-38BE91A0CA00}</Project>
-      <Name>HeuristicLab.Problems.DataAnalysis.Symbolic-3.4</Name>
-      <Private>False</Private>
-    </ProjectReference>
     <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis\3.4\HeuristicLab.Problems.DataAnalysis-3.4.csproj">
       <Project>{DF87C13E-A889-46FF-8153-66DCAA8C5674}</Project>
Index: /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/Plugin.cs.frame
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/Plugin.cs.frame	(revision 18021)
+++ /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/Plugin.cs.frame	(revision 18022)
@@ -45,5 +45,4 @@
   [PluginDependency("HeuristicLab.Optimizer", "3.3")]
   [PluginDependency("HeuristicLab.Problems.DataAnalysis", "3.4")]
-  [PluginDependency("HeuristicLab.Problems.DataAnalysis.Symbolic.Regression", "3.4")]
   [PluginDependency("HeuristicLab.Visualization.ChartControlsExtensions", "3.3")]
   public class HeuristicLabProblemsDataAnalysisViewsPlugin : PluginBase {
Index: /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/Regression/RegressionSolutionErrorCharacteristicsCurveView.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/Regression/RegressionSolutionErrorCharacteristicsCurveView.cs	(revision 18021)
+++ /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/Regression/RegressionSolutionErrorCharacteristicsCurveView.cs	(revision 18022)
@@ -29,4 +29,5 @@
 using HeuristicLab.MainForm;
 using HeuristicLab.Optimization;
+using HeuristicLab.PluginInfrastructure;
 
 namespace HeuristicLab.Problems.DataAnalysis.Views {
@@ -74,5 +75,5 @@
     }
 
-    private readonly IList<IRegressionSolution> solutions = new List<IRegressionSolution>();
+    private readonly List<IRegressionSolution> solutions = new List<IRegressionSolution>();
     public IEnumerable<IRegressionSolution> Solutions {
       get { return solutions.AsEnumerable(); }
@@ -101,10 +102,7 @@
       else {
         // recalculate baseline solutions (for symbolic regression models the features used in the model might have changed)
-        solutions.Clear(); // remove all
+        solutions.Clear();
         solutions.Add(Content); // re-add the first solution
-        // and recalculate all other solutions
-        foreach (var sol in CreateBaselineSolutions()) {
-          solutions.Add(sol);
-        }
+        solutions.AddRange(CreateBaselineSolutions());
         UpdateChart();
       }
@@ -114,10 +112,7 @@
       else {
         // recalculate baseline solutions
-        solutions.Clear(); // remove all
+        solutions.Clear();
         solutions.Add(Content); // re-add the first solution
-        // and recalculate all other solutions
-        foreach (var sol in CreateBaselineSolutions()) {
-          solutions.Add(sol);
-        }
+        solutions.AddRange(CreateBaselineSolutions());
         UpdateChart();
       }
@@ -129,11 +124,6 @@
       ReadOnly = Content == null;
       if (Content != null) {
-        // recalculate all solutions
         solutions.Add(Content);
-        if (ProblemData.TrainingIndices.Any()) {
-          foreach (var sol in CreateBaselineSolutions())
-            solutions.Add(sol);
-          // more solutions can be added by drag&drop
-        }
+        solutions.AddRange(CreateBaselineSolutions());
       }
       UpdateChart();
@@ -175,5 +165,5 @@
       UpdateSeries(residuals, solutionSeries);
 
-      solutionSeries.ToolTip = "Area over Curve: " + CalculateAreaOverCurve(solutionSeries);
+      solutionSeries.ToolTip = "Area over curve: " + CalculateAreaOverCurve(solutionSeries);
       solutionSeries.LegendToolTip = "Double-click to open model";
       chart.Series.Add(solutionSeries);
@@ -249,7 +239,9 @@
     protected virtual List<double> GetResiduals(IEnumerable<double> originalValues, IEnumerable<double> estimatedValues) {
       switch (residualComboBox.SelectedItem.ToString()) {
-        case "Absolute error": return originalValues.Zip(estimatedValues, (x, y) => Math.Abs(x - y))
+        case "Absolute error":
+          return originalValues.Zip(estimatedValues, (x, y) => Math.Abs(x - y))
             .Where(r => !double.IsNaN(r) && !double.IsInfinity(r)).ToList();
-        case "Squared error": return originalValues.Zip(estimatedValues, (x, y) => (x - y) * (x - y))
+        case "Squared error":
+          return originalValues.Zip(estimatedValues, (x, y) => (x - y) * (x - y))
             .Where(r => !double.IsNaN(r) && !double.IsInfinity(r)).ToList();
         case "Relative error":
@@ -289,9 +281,14 @@
 
     protected virtual IEnumerable<IRegressionSolution> CreateBaselineSolutions() {
-      yield return CreateConstantSolution();
-      yield return CreateLinearSolution();
+      var constantSolution = CreateConstantSolution();
+      if (constantSolution != null) yield return constantSolution;
+
+      var linearRegressionSolution = CreateLinearSolution();
+      if (linearRegressionSolution != null) yield return linearRegressionSolution;
     }
 
     private IRegressionSolution CreateConstantSolution() {
+      if (!ProblemData.TrainingIndices.Any()) return null;
+
       double averageTrainingTarget = ProblemData.Dataset.GetDoubleValues(ProblemData.TargetVariable, ProblemData.TrainingIndices).Average();
       var model = new ConstantModel(averageTrainingTarget, ProblemData.TargetVariable);
@@ -301,8 +298,14 @@
     }
     private IRegressionSolution CreateLinearSolution() {
-      double rmsError, cvRmsError;
-      var solution = LinearRegression.CreateLinearRegressionSolution((IRegressionProblemData)ProblemData.Clone(), out rmsError, out cvRmsError);
-      solution.Name = "Baseline (linear)";
-      return solution;
+      try {
+        var solution = LinearRegression.CreateSolution((IRegressionProblemData)ProblemData.Clone(), out _, out _);
+        solution.Name = "Baseline (linear)";
+        return solution;
+      } catch (NotSupportedException e) {
+        ErrorHandling.ShowErrorDialog("Could not create a linear regression solution.", e);
+      } catch (ArgumentException e) {
+        ErrorHandling.ShowErrorDialog("Could not create a linear regression solution.", e);
+      }
+      return null;
     }
 
