diff --git a/cml/shared/parameter.py b/cml/shared/parameter.py
index ca883911db4287cd35326d67196e3b17bfdfca90..d6606fc09bf8b23daea9d765e6094b2376e98c21 100644
--- a/cml/shared/parameter.py
+++ b/cml/shared/parameter.py
@@ -1,6 +1,7 @@
 # TODO (dmt): Validate user input!
 # TODO (dmt): Add doc!
 # TODO (dmt): Provide default values and the correct data type!
+PROTOCOL_LEVEL = 55
 
 
 class SetFeatures:
@@ -323,13 +324,19 @@ class MaxModelsReduction:
 
 class MinTestAccuracy:
     def __init__(self):
-        self.min_test_accuracy = 10
+        self.min_test_accuracy = 0.8
 
     def __get__(self, instance, owner):
         return self.min_test_accuracy
 
     def __set__(self, instance, value):
-        self.min_test_accuracy = value
+        if isinstance(value, float):
+            self.min_test_accuracy = value
+        elif isinstance(value, str):
+            try:
+                self.min_test_accuracy = float(value)
+            except TypeError as error:
+                print(error)
 
 
 class MaxTestErrorAvg:
@@ -340,7 +347,13 @@ class MaxTestErrorAvg:
         return self.max_test_error_avg
 
     def __set__(self, instance, value):
-        self.max_test_error_avg = value
+        if isinstance(value, float):
+            self.max_test_error_avg = value
+        elif isinstance(value, str):
+            try:
+                self.max_test_error_avg = float(value)
+            except TypeError as error:
+                print(error)
 
 
 class MaxTestErrorMax:
@@ -351,7 +364,13 @@ class MaxTestErrorMax:
         return self.max_test_error_max
 
     def __set__(self, instance, value):
-        self.max_test_error_max = value
+        if isinstance(value, float):
+            self.max_test_error_max = value
+        elif isinstance(value, str):
+            try:
+                self.max_test_error_max = float(value)
+            except TypeError as error:
+                print(error)
 
 
 class ReliabilitySample:
@@ -362,7 +381,13 @@ class ReliabilitySample:
         return self.reliability_sample
 
     def __set__(self, instance, value):
-        self.reliability_sample = value
+        if isinstance(value, float):
+            self.reliability_sample = value
+        elif isinstance(value, str):
+            try:
+                self.reliability_sample = float(value)
+            except TypeError as error:
+                print(error)
 
 
 class MinReliability:
@@ -373,7 +398,13 @@ class MinReliability:
         return self.min_reliability
 
     def __set__(self, instance, value):
-        self.min_reliability = value
+        if isinstance(value, float):
+            self.min_reliability = value
+        elif isinstance(value, str):
+            try:
+                self.min_reliability = float(value)
+            except TypeError as error:
+                print(error)
 
 
 class ReduceModelRedundancy:
@@ -384,7 +415,15 @@ class ReduceModelRedundancy:
         return self.reduce_model_redundancy
 
     def __set__(self, instance, value):
-        self.reduce_model_redundancy = value
+        if isinstance(value, bool):
+            self.reduce_model_redundancy = value
+        elif isinstance(value, str):
+            if value in ("False", "no", "false"):
+                self.reduce_model_redundancy = False
+            elif value in ("True", "yes", "true"):
+                self.reduce_model_redundancy = True
+            else:
+                raise TypeError()
 
 
 class DeconstStrategy: