Index: trunk/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/DataAnalysisProblemData.cs
===================================================================
--- trunk/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/DataAnalysisProblemData.cs	(revision 18000)
+++ trunk/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/DataAnalysisProblemData.cs	(revision 18034)
@@ -38,4 +38,5 @@
     protected const string TestPartitionParameterName = "TestPartition";
     protected const string TransformationsParameterName = "Transformations";
+    protected const string VariableRangesParameterName = "VariableRanges";
 
     #region parameter properites
@@ -48,4 +49,7 @@
       }
     }
+
+    public IFixedValueParameter<IntervalCollection> VariableRangesParameter => (IFixedValueParameter<IntervalCollection>)Parameters[VariableRangesParameterName];
+    public IntervalCollection VariableRanges => VariableRangesParameter.Value;
 
     private IFixedValueParameter<ReadOnlyCheckedItemList<StringValue>> inputVariablesParameter;
@@ -151,8 +155,12 @@
         TransformationsParameter.Hidden = true;
       }
+      if (!Parameters.ContainsKey(VariableRangesParameterName)) {
+        var variableRanges = Dataset.GetVariableRanges();
+        Parameters.Add(new FixedValueParameter<IntervalCollection>(VariableRangesParameterName, variableRanges));
+      }
       RegisterEventHandlers();
     }
 
-    protected DataAnalysisProblemData(IDataset dataset, IEnumerable<string> allowedInputVariables, IEnumerable<ITransformation> transformations = null) {
+    protected DataAnalysisProblemData(IDataset dataset, IEnumerable<string> allowedInputVariables, IEnumerable<ITransformation> transformations = null, IntervalCollection variableRanges = null) {
       if (dataset == null) throw new ArgumentNullException("The dataset must not be null.");
       if (allowedInputVariables == null) throw new ArgumentNullException("The allowed input variables must not be null.");
@@ -178,4 +186,9 @@
       Parameters.Add(new FixedValueParameter<IntRange>(TestPartitionParameterName, "", new IntRange(testPartitionStart, testPartitionEnd)));
       Parameters.Add(new FixedValueParameter<ReadOnlyItemList<ITransformation>>(TransformationsParameterName, "", transformationsList.AsReadOnly()));
+
+      if (variableRanges == null) {
+        variableRanges = Dataset.GetVariableRanges();
+      }
+      Parameters.Add(new FixedValueParameter<IntervalCollection>(VariableRangesParameterName, variableRanges));
 
       TransformationsParameter.Hidden = true;
Index: trunk/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/RegressionProblemData.cs
===================================================================
--- trunk/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/RegressionProblemData.cs	(revision 18000)
+++ trunk/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/RegressionProblemData.cs	(revision 18034)
@@ -34,5 +34,5 @@
   public class RegressionProblemData : DataAnalysisProblemData, IRegressionProblemData, IStorableContent {
     protected const string TargetVariableParameterName = "TargetVariable";
-    protected const string VariableRangesParameterName = "VariableRanges";
+    //protected const string VariableRangesParameterName = "VariableRanges";
     public string Filename { get; set; }
 
@@ -99,5 +99,5 @@
     #region parameter properties
     public IConstrainedValueParameter<StringValue> TargetVariableParameter => (IConstrainedValueParameter<StringValue>)Parameters[TargetVariableParameterName];
-    public IFixedValueParameter<IntervalCollection> VariableRangesParameter => (IFixedValueParameter<IntervalCollection>)Parameters[VariableRangesParameterName];
+    /*public IFixedValueParameter<IntervalCollection> VariableRangesParameter => (IFixedValueParameter<IntervalCollection>)Parameters[VariableRangesParameterName];
     #endregion
 
@@ -105,5 +105,5 @@
     public IntervalCollection VariableRanges {
       get => VariableRangesParameter.Value;
-    }
+    }*/
 
     public string TargetVariable {
@@ -129,8 +129,8 @@
     [StorableHook(HookType.AfterDeserialization)]
     private void AfterDeserialization() {
-      if (!Parameters.ContainsKey(VariableRangesParameterName)) {
+      /*if (!Parameters.ContainsKey(VariableRangesParameterName)) {
         var variableRanges = Dataset.GetVariableRanges();
         Parameters.Add(new FixedValueParameter<IntervalCollection>(VariableRangesParameterName, variableRanges));
-      }
+      }*/
 
       RegisterParameterEvents();
@@ -158,13 +158,13 @@
 
     public RegressionProblemData(IDataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable,
-      IEnumerable<ITransformation> transformations = null,
-      IntervalCollection variableRanges = null)
+      IEnumerable<ITransformation> transformations = null/*,
+      IntervalCollection variableRanges = null*/)
       : base(dataset, allowedInputVariables, transformations ?? Enumerable.Empty<ITransformation>()) {
       var variables = InputVariables.Select(x => x.AsReadOnly()).ToList();
       Parameters.Add(new ConstrainedValueParameter<StringValue>(TargetVariableParameterName, new ItemSet<StringValue>(variables), variables.Where(x => x.Value == targetVariable).First()));
-      if (variableRanges == null) {
+      /*if (variableRanges == null) {
         variableRanges = Dataset.GetVariableRanges();
       }
-      Parameters.Add(new FixedValueParameter<IntervalCollection>(VariableRangesParameterName, variableRanges));
+      Parameters.Add(new FixedValueParameter<IntervalCollection>(VariableRangesParameterName, variableRanges));*/
     }
     private void RegisterParameterEvents() {
Index: trunk/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/ShapeConstrainedRegressionProblemData.cs
===================================================================
--- trunk/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/ShapeConstrainedRegressionProblemData.cs	(revision 18000)
+++ trunk/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/ShapeConstrainedRegressionProblemData.cs	(revision 18034)
@@ -152,5 +152,5 @@
                                                  IntRange trainingPartition, IntRange testPartition,
                                                  IEnumerable<ITransformation> transformations = null, ShapeConstraints sc = null, IntervalCollection variableRanges = null)
-    : base(dataset, allowedInputVariables, targetVariable, transformations ?? Enumerable.Empty<ITransformation>(), variableRanges) {
+    : base(dataset, allowedInputVariables, targetVariable, transformations ?? Enumerable.Empty<ITransformation>()) {
       TrainingPartition.Start = trainingPartition.Start;
       TrainingPartition.End = trainingPartition.End;
Index: trunk/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/IDataAnalysisProblemData.cs
===================================================================
--- trunk/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/IDataAnalysisProblemData.cs	(revision 18000)
+++ trunk/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/IDataAnalysisProblemData.cs	(revision 18034)
@@ -35,4 +35,6 @@
     IEnumerable<string> AllowedInputVariables { get; }
 
+    IntervalCollection VariableRanges { get; }
+
     double[,] AllowedInputsTrainingValues { get; }
     double[,] AllowedInputsTestValues { get; }
Index: trunk/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/Regression/IRegressionProblemData.cs
===================================================================
--- trunk/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/Regression/IRegressionProblemData.cs	(revision 18000)
+++ trunk/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/Regression/IRegressionProblemData.cs	(revision 18034)
@@ -29,5 +29,5 @@
   public interface IRegressionProblemData : IDataAnalysisProblemData {
     string TargetVariable { get; set; }
-    IntervalCollection VariableRanges { get; }
+    
     IEnumerable<double> TargetVariableValues { get; }
     IEnumerable<double> TargetVariableTrainingValues { get; }
