pyGPGO/GPGO.py

Killed 50 out of 62 mutants

Survived

Survived mutation testing. These mutants show holes in your test suite.

Mutant 1

--- pyGPGO/GPGO.py
+++ pyGPGO/GPGO.py
@@ -7,7 +7,7 @@
 
 
 class GPGO:
-    def __init__(self, surrogate, acquisition, f, parameter_dict, n_jobs=1):
+    def __init__(self, surrogate, acquisition, f, parameter_dict, n_jobs=2):
         """
         Bayesian Optimization class.
 

Mutant 5

--- pyGPGO/GPGO.py
+++ pyGPGO/GPGO.py
@@ -38,7 +38,7 @@
         self.GP = surrogate
         self.A = acquisition
         self.f = f
-        self.parameters = parameter_dict
+        self.parameters = None
         self.n_jobs = n_jobs
 
         self.parameter_key = list(parameter_dict.keys())

Mutant 6

--- pyGPGO/GPGO.py
+++ pyGPGO/GPGO.py
@@ -39,7 +39,7 @@
         self.A = acquisition
         self.f = f
         self.parameters = parameter_dict
-        self.n_jobs = n_jobs
+        self.n_jobs = None
 
         self.parameter_key = list(parameter_dict.keys())
         self.parameter_value = list(parameter_dict.values())

Mutant 17

--- pyGPGO/GPGO.py
+++ pyGPGO/GPGO.py
@@ -60,7 +60,7 @@
         """
         d = OrderedDict()
         for index, param in enumerate(self.parameter_key):
-            if self.parameter_type[index] == 'int':
+            if self.parameter_type[index] == 'XXintXX':
                 d[param] = np.random.randint(
                     self.parameter_range[index][0], self.parameter_range[index][1])
             elif self.parameter_type[index] == 'cont':

Mutant 23

--- pyGPGO/GPGO.py
+++ pyGPGO/GPGO.py
@@ -70,7 +70,7 @@
                 raise ValueError('Unsupported variable type.')
         return d
 
-    def _firstRun(self, n_eval=3):
+    def _firstRun(self, n_eval=4):
         """
         Performs initial evaluations before fitting GP.
 

Mutant 33

--- pyGPGO/GPGO.py
+++ pyGPGO/GPGO.py
@@ -107,7 +107,7 @@
 
         """
         new_mean, new_var = self.GP.predict(xnew, return_std=True)
-        new_std = np.sqrt(new_var + 1e-6)
+        new_std = np.sqrt(new_var - 1e-6)
         return -self.A.eval(self.tau, new_mean, new_std)
 
     def _optimizeAcq(self, method='L-BFGS-B', n_start=100):

Mutant 34

--- pyGPGO/GPGO.py
+++ pyGPGO/GPGO.py
@@ -107,7 +107,7 @@
 
         """
         new_mean, new_var = self.GP.predict(xnew, return_std=True)
-        new_std = np.sqrt(new_var + 1e-6)
+        new_std = np.sqrt(new_var + 1.000001)
         return -self.A.eval(self.tau, new_mean, new_std)
 
     def _optimizeAcq(self, method='L-BFGS-B', n_start=100):

Mutant 43

--- pyGPGO/GPGO.py
+++ pyGPGO/GPGO.py
@@ -127,7 +127,7 @@
                                      for s in start_points_dict])
         x_best = np.empty((n_start, len(self.parameter_key)))
         f_best = np.empty((n_start,))
-        if self.n_jobs == 1:
+        if self.n_jobs != 1:
             for index, start_point in enumerate(start_points_arr):
                 res = minimize(self._acqWrapper, x0=start_point, method=method,
                                bounds=self.parameter_range)

Mutant 44

--- pyGPGO/GPGO.py
+++ pyGPGO/GPGO.py
@@ -127,7 +127,7 @@
                                      for s in start_points_dict])
         x_best = np.empty((n_start, len(self.parameter_key)))
         f_best = np.empty((n_start,))
-        if self.n_jobs == 1:
+        if self.n_jobs == 2:
             for index, start_point in enumerate(start_points_arr):
                 res = minimize(self._acqWrapper, x0=start_point, method=method,
                                bounds=self.parameter_range)

Mutant 56

--- pyGPGO/GPGO.py
+++ pyGPGO/GPGO.py
@@ -170,7 +170,7 @@
         opt_x = self.GP.X[argtau]
         res_d = OrderedDict()
         for i, (key, param_type) in enumerate(zip(self.parameter_key, self.parameter_type)):
-            if param_type == 'int':
+            if param_type == 'XXintXX':
                 res_d[key] = int(opt_x[i])
             else:
                 res_d[key] = opt_x[i]

Mutant 58

--- pyGPGO/GPGO.py
+++ pyGPGO/GPGO.py
@@ -176,7 +176,7 @@
                 res_d[key] = opt_x[i]
         return res_d, self.tau
 
-    def run(self, max_iter=10, init_evals=3, resume=False):
+    def run(self, max_iter=11, init_evals=3, resume=False):
         """
         Runs the Bayesian Optimization procedure.
 

Mutant 59

--- pyGPGO/GPGO.py
+++ pyGPGO/GPGO.py
@@ -176,7 +176,7 @@
                 res_d[key] = opt_x[i]
         return res_d, self.tau
 
-    def run(self, max_iter=10, init_evals=3, resume=False):
+    def run(self, max_iter=10, init_evals=4, resume=False):
         """
         Runs the Bayesian Optimization procedure.