Index: /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/MultiObjective/SymbolicRegressionMultiObjectiveMultiHardConstraintEvaluator.cs
===================================================================
--- /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/MultiObjective/SymbolicRegressionMultiObjectiveMultiHardConstraintEvaluator.cs	(revision 17635)
+++ /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/MultiObjective/SymbolicRegressionMultiObjectiveMultiHardConstraintEvaluator.cs	(revision 17636)
@@ -91,5 +91,5 @@
 
       var constraints    = problemData.IntervalConstraints.Constraints.Where(c => c.Enabled);
-      var variableRanges = problemData.VariableRanges.GetDictionary();
+      var variableRanges = problemData.VariableRanges.GetReadonlyDictionary();
 
       var objectives = new List<double> {nmse}; //Add r² to resultlist
@@ -103,5 +103,5 @@
 
     private static double ConstraintExceeded(IntervalConstraint constraint, IntervalInterpreter intervalInterpreter,
-                                             IDictionary<string, Interval> variableRanges,
+                                             IReadOnlyDictionary<string, Interval> variableRanges,
                                              ISymbolicExpressionTree solution) {
       return SymbolicRegressionConstraintAnalyzer.ConstraintSatisfied(constraint, new IntervalInterpreter(),
Index: /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/MultiObjective/SymbolicRegressionMultiObjectiveMultiSoftConstraintEvaluator.cs
===================================================================
--- /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/MultiObjective/SymbolicRegressionMultiObjectiveMultiSoftConstraintEvaluator.cs	(revision 17635)
+++ /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/MultiObjective/SymbolicRegressionMultiObjectiveMultiSoftConstraintEvaluator.cs	(revision 17636)
@@ -120,5 +120,5 @@
 
       var constraints    = problemData.IntervalConstraints.Constraints.Where(c => c.Enabled);
-      var variableRanges = problemData.VariableRanges.GetDictionary();
+      var variableRanges = problemData.VariableRanges.GetReadonlyDictionary();
 
       var objectives          = new List<double> {nmse};
@@ -144,5 +144,5 @@
 
     public static double ConstraintExceeded(IntervalConstraint constraint, IntervalInterpreter intervalInterpreter,
-                                            IDictionary<string, Interval> variableRanges,
+                                            IReadOnlyDictionary<string, Interval> variableRanges,
                                             ISymbolicExpressionTree solution /*, bool splitting*/) {
       if (constraint.Variable != null && !variableRanges.ContainsKey(constraint.Variable))
@@ -189,5 +189,5 @@
       get {
         var objectives = new List<bool> {false};          //First NMSE ==> min
-        objectives.AddRange(Enumerable.Repeat(false, 3)); //Constraints ==> min
+        objectives.AddRange(Enumerable.Repeat(false, 2)); //Constraints ==> min
 
         return objectives;
Index: /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SingleObjective/Evaluators/SymbolicRegressionSingleObjectiveConstraintConstOptEvaluator.cs
===================================================================
--- /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SingleObjective/Evaluators/SymbolicRegressionSingleObjectiveConstraintConstOptEvaluator.cs	(revision 17635)
+++ /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SingleObjective/Evaluators/SymbolicRegressionSingleObjectiveConstraintConstOptEvaluator.cs	(revision 17636)
@@ -44,5 +44,5 @@
 
       var constraints    = problemData.IntervalConstraints.EnabledConstraints;
-      var variableRanges = problemData.VariableRanges.GetDictionary();
+      var variableRanges = problemData.VariableRanges.GetReadonlyDictionary();
 
       if (!SymbolicRegressionConstraintAnalyzer.ConstraintsSatisfied(constraints, variableRanges, tree)) return 0;
Index: /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SingleObjective/Evaluators/SymbolicRegressionSingleObjectiveConstraintPearsonRSquaredEvaluator.cs
===================================================================
--- /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SingleObjective/Evaluators/SymbolicRegressionSingleObjectiveConstraintPearsonRSquaredEvaluator.cs	(revision 17635)
+++ /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SingleObjective/Evaluators/SymbolicRegressionSingleObjectiveConstraintPearsonRSquaredEvaluator.cs	(revision 17636)
@@ -47,5 +47,5 @@
 
       var constraints    = problemData.IntervalConstraints.EnabledConstraints;
-      var variableRanges = problemData.VariableRanges.GetDictionary();
+      var variableRanges = problemData.VariableRanges.GetReadonlyDictionary();
       var tree           = solution;
 
Index: /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SymbolicRegressionConstraintAnalyzer.cs
===================================================================
--- /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SymbolicRegressionConstraintAnalyzer.cs	(revision 17635)
+++ /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SymbolicRegressionConstraintAnalyzer.cs	(revision 17636)
@@ -63,5 +63,5 @@
       var results        = ResultCollectionParameter.ActualValue;
       var constraints    = problemData.IntervalConstraints.EnabledConstraints;
-      var variableRanges = problemData.VariableRanges.GetDictionary();
+      var variableRanges = problemData.VariableRanges.GetReadonlyDictionary();
       var newDataTable   = ConstraintViolationParameter.ActualValue;
 
@@ -82,5 +82,5 @@
     public static bool ConstraintSatisfied(IntervalConstraint            constraint,
                                            IntervalInterpreter           intervalInterpreter,
-                                           IDictionary<string, Interval> variableRanges,
+                                           IReadOnlyDictionary<string, Interval> variableRanges,
                                            ISymbolicExpressionTree       solution) {
       if (constraint.Variable != null && !variableRanges.ContainsKey(constraint.Variable))
@@ -110,5 +110,5 @@
 
     public static bool ConstraintsSatisfied(IEnumerable<IntervalConstraint> constraints,
-                                            IDictionary<string, Interval>   variableRanges,
+                                            IReadOnlyDictionary<string, Interval>   variableRanges,
                                             ISymbolicExpressionTree         solution) {
       var intervalInterpreter = new IntervalInterpreter();
Index: /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SymbolicRegressionSolution.cs
===================================================================
--- /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SymbolicRegressionSolution.cs	(revision 17635)
+++ /branches/3076_IA_evaluators_analyzers/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SymbolicRegressionSolution.cs	(revision 17636)
@@ -200,5 +200,5 @@
       var problemData = solution.ProblemData;
       var model = solution.Model;
-      var variableRanges = problemData.VariableRanges.GetDictionary();
+      var variableRanges = problemData.VariableRanges.GetReadonlyDictionary();
 
       intervalEvaluation.AddInterval($"Target {problemData.TargetVariable}", new Interval(variableRanges[problemData.TargetVariable].LowerBound, variableRanges[problemData.TargetVariable].UpperBound));
