diff --git a/multiview_platform/MonoMultiViewClassifiers/Monoview/Additions/BoostUtils.py b/multiview_platform/MonoMultiViewClassifiers/Monoview/Additions/BoostUtils.py
index 5c7c042bb0b65e98a1a2688900faddafdb0711a2..ca2cf70442dd125eba2b1ac50c944dcf07d34fb8 100644
--- a/multiview_platform/MonoMultiViewClassifiers/Monoview/Additions/BoostUtils.py
+++ b/multiview_platform/MonoMultiViewClassifiers/Monoview/Additions/BoostUtils.py
@@ -696,9 +696,6 @@ def get_accuracy_graph(plotted_data, classifier_name, file_name, name="Accuracie
 
 class BaseBoost(object):
 
-    def __init__(self):
-        self.n_stumps = 10
-
     def _collect_probas(self, X):
         return np.asarray([clf.predict_proba(X) for clf in self.estimators_generator.estimators_])
 
diff --git a/multiview_platform/MonoMultiViewClassifiers/Monoview/Additions/QarBoostUtils.py b/multiview_platform/MonoMultiViewClassifiers/Monoview/Additions/QarBoostUtils.py
index eee18a47f533b5089f9f1b92c8bf5c1abbd675fa..7e51a32f9ba08eaf1b993c148e9f1257b583a415 100644
--- a/multiview_platform/MonoMultiViewClassifiers/Monoview/Additions/QarBoostUtils.py
+++ b/multiview_platform/MonoMultiViewClassifiers/Monoview/Additions/QarBoostUtils.py
@@ -19,9 +19,9 @@ class ColumnGenerationClassifierQar(BaseEstimator, ClassifierMixin, BaseBoost):
     def __init__(self, n_max_iterations=None, estimators_generator=None,
                  random_state=42, self_complemented=True, twice_the_same=False,
                  c_bound_choice=True, random_start=True,
-                 n_stumps_per_attribute=None, use_r=True, c_bound_sol=True,
+                 n_stumps_per_attribute=1, use_r=True, c_bound_sol=True,
                  plotted_metric=Metrics.zero_one_loss, save_train_data=True,
-                 test_graph=True, mincq_tracking=True):
+                 test_graph=True, mincq_tracking=False):
         super(ColumnGenerationClassifierQar, self).__init__()
         r"""
 
@@ -46,7 +46,6 @@ class ColumnGenerationClassifierQar(BaseEstimator, ClassifierMixin, BaseBoost):
             plotted_metric : Metric module
                 The metric that will be plotted for each iteration of boosting. 
             """
-
         if type(random_state) is int:
             self.random_state = np.random.RandomState(random_state)
         else:
@@ -62,8 +61,7 @@ class ColumnGenerationClassifierQar(BaseEstimator, ClassifierMixin, BaseBoost):
         self.c_bound_choice = c_bound_choice
         self.random_start = random_start
         self.plotted_metric = plotted_metric
-        if n_stumps_per_attribute:
-            self.n_stumps = n_stumps_per_attribute
+        self.n_stumps = n_stumps_per_attribute
         self.use_r = use_r
         self.c_bound_sol = c_bound_sol
         self.save_train_data = save_train_data
@@ -74,15 +72,16 @@ class ColumnGenerationClassifierQar(BaseEstimator, ClassifierMixin, BaseBoost):
                                        "n_stumps", "use_r", "c_bound_sol"]
         self.mincq_tracking = mincq_tracking
 
+    def get_params(self, deep=True):
+        return {"random_state":self.random_state, "n_max_iterations":self.n_max_iterations}
+
     def set_params(self, **params):
         self.n_max_iterations = params["n_max_iterations"]
         return self
 
     def fit(self, X, y):
 
-
         start = time.time()
-
         formatted_X, formatted_y = self.format_X_y(X, y)
 
         self.init_info_containers()
diff --git a/multiview_platform/MonoMultiViewClassifiers/Monoview/ExportResults.py b/multiview_platform/MonoMultiViewClassifiers/Monoview/ExportResults.py
index dedcf5e6735ee00e0dfcfa4bf6b11ed5fad2e0e6..a5e34ddaf537e2667d0df827840cff5571081239 100644
--- a/multiview_platform/MonoMultiViewClassifiers/Monoview/ExportResults.py
+++ b/multiview_platform/MonoMultiViewClassifiers/Monoview/ExportResults.py
@@ -23,7 +23,7 @@ from sklearn import metrics  # For stastics on classification
 # Author-Info
 __author__ = "Nikolas Huelsmann"
 __status__ = "Prototype"  # Production, Development, Prototype
-__date__ = 2016 - 03 - 25
+__date__ = 2016_03_25
 
 
 #### Export Features to CSV
diff --git a/multiview_platform/MonoMultiViewClassifiers/Monoview/MonoviewUtils.py b/multiview_platform/MonoMultiViewClassifiers/Monoview/MonoviewUtils.py
index f67aac063f2b69dd869871a968e16ff5777260e3..64ecb3ffe0d82a7b6fc8d760fcb705ef56b4aeff 100644
--- a/multiview_platform/MonoMultiViewClassifiers/Monoview/MonoviewUtils.py
+++ b/multiview_platform/MonoMultiViewClassifiers/Monoview/MonoviewUtils.py
@@ -28,7 +28,7 @@ def randomizedSearch(X_train, y_train, randomState, outputFileName, classifierMo
         scorer = metricModule.get_scorer(**metricKWARGS)
         nb_possible_combinations = compute_possible_combinations(params_dict)
         min_list = np.array([min(nb_possible_combination, nIter) for nb_possible_combination in nb_possible_combinations])
-        randomSearch = RandomizedSearchCV(estimator, n_iter=np.sum(min_list), param_distributions=params_dict, refit=True,
+        randomSearch = RandomizedSearchCV(estimator, n_iter=int(np.sum(min_list)), param_distributions=params_dict, refit=True,
                                           n_jobs=nbCores, scoring=scorer, cv=KFolds, random_state=randomState)
         detector = randomSearch.fit(X_train, y_train)
 
diff --git a/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/CGDesc.py b/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/CGDesc.py
index 6b0f045ec0ef98a30ad4c43aa8d36c73e1283f67..6773cc5c66b9d565b4086949c1e5f52be56bba4a 100644
--- a/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/CGDesc.py
+++ b/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/CGDesc.py
@@ -16,7 +16,6 @@ class CGDesc(ColumnGenerationClassifierQar, BaseMonoviewClassifier):
             use_r=True,
             c_bound_sol=True
             )
-
         self.param_names = ["n_max_iterations"]
         self.distribs = [CustomRandint(low=2, high=1000)]
         self.classed_params = []
@@ -30,7 +29,7 @@ class CGDesc(ColumnGenerationClassifierQar, BaseMonoviewClassifier):
         return self.getInterpretQar(directory, y_test)
 
     def get_name_for_fusion(self):
-        return "CGr"
+        return "CGD"
 
 
 def formatCmdArgs(args):
diff --git a/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/CGreed.py b/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/CGreed.py
index 351698c2faac20f5e910063657e07d92c9b95be3..bb0a6ca05a5630a49eb9cab6bd9e7f3fd8684ca3 100644
--- a/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/CGreed.py
+++ b/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/CGreed.py
@@ -5,7 +5,7 @@ from ..Monoview.Additions.QarBoostUtils import ColumnGenerationClassifierQar
 
 class CGreed(ColumnGenerationClassifierQar, BaseMonoviewClassifier):
 
-    def __init__(self, random_state=None, n_max_iterations=500, n_stumps_per_attribute=10, **kwargs):
+    def __init__(self, random_state=None, n_max_iterations=500, n_stumps_per_attribute=1, **kwargs):
         super(CGreed, self).__init__(n_max_iterations=n_max_iterations,
             random_state=random_state,
             self_complemented=True,
diff --git a/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/CQBoost.py b/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/CQBoost.py
index 99618aff26b506ee99323b83fb6b4bc181bf9266..9556dd1ce0084ac9cc2b95bd2b5f41408bc05800 100644
--- a/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/CQBoost.py
+++ b/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/CQBoost.py
@@ -7,7 +7,7 @@ import os
 
 class CQBoost(ColumnGenerationClassifier, BaseMonoviewClassifier):
 
-    def __init__(self, random_state=None, mu=0.01, epsilon=1e-06, **kwargs):
+    def __init__(self, random_state=None, mu=0.01, epsilon=1e-06, n_stumps=10, **kwargs):
         super(CQBoost, self).__init__(
             random_state=random_state,
             mu=mu,
@@ -18,6 +18,7 @@ class CQBoost(ColumnGenerationClassifier, BaseMonoviewClassifier):
                          CustomRandint(low=1, high=15, multiplier="e-")]
         self.classed_params = []
         self.weird_strings = {}
+        self.n_stumps = n_stumps
         if "nbCores" not in kwargs:
             self.nbCores = 1
         else:
diff --git a/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/GradientBoosting.py b/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/GradientBoosting.py
new file mode 100644
index 0000000000000000000000000000000000000000..40eb51457cfe0bf85e6d67b37bb944da1073acc6
--- /dev/null
+++ b/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/GradientBoosting.py
@@ -0,0 +1,46 @@
+from sklearn.tree import DecisionTreeClassifier
+from sklearn.ensemble import GradientBoostingClassifier
+
+from ..Monoview.MonoviewUtils import CustomRandint, BaseMonoviewClassifier
+
+# Author-Info
+__author__ = "Baptiste Bauvin"
+__status__ = "Prototype"  # Production, Development, Prototype
+
+
+class GradientBoosting(GradientBoostingClassifier, BaseMonoviewClassifier):
+
+    def __init__(self, random_state=None, loss="exponential", max_depth=1.0,
+                 n_estimators=100, init=DecisionTreeClassifier(max_depth=1), **kwargs):
+        super(GradientBoosting, self).__init__(
+            loss=loss,
+            max_depth=max_depth,
+            n_estimators=n_estimators,
+            init=init,
+            random_state=random_state
+            )
+        self.param_names = ["n_estimators",]
+        self.classed_params = []
+        self.distribs = [CustomRandint(low=50, high=500),]
+        self.weird_strings = {}
+
+    def canProbas(self):
+        """Used to know if the classifier can return label probabilities"""
+        return True
+
+    def getInterpret(self, directory, y_test):
+        interpretString = ""
+        return interpretString
+
+
+def formatCmdArgs(args):
+    """Used to format kwargs for the parsed args"""
+    kwargsDict = {"n_estimators": args.GB_n_est,}
+    return kwargsDict
+
+
+def paramsToSet(nIter, randomState):
+    paramsSet = []
+    for _ in range(nIter):
+        paramsSet.append({"n_estimators": randomState.randint(50, 500),})
+    return paramsSet
\ No newline at end of file