diff --git a/hpbandster/__init__.py b/hpbandster/__init__.py index 8b13789..ad66bea 100644 --- a/hpbandster/__init__.py +++ b/hpbandster/__init__.py @@ -1 +1 @@ - +__version__ = '0.7.41' diff --git a/hpbandster/optimizers/bohb.py b/hpbandster/optimizers/bohb.py index d22b609..9ccfe22 100644 --- a/hpbandster/optimizers/bohb.py +++ b/hpbandster/optimizers/bohb.py @@ -135,7 +135,7 @@ def get_next_iteration(self, iteration, iteration_kwargs={}): # number of 'SH rungs' s = self.max_SH_iter - 1 - (iteration%self.max_SH_iter) # number of configurations in that bracket - n0 = int(np.floor((self.max_SH_iter)/(s+1)) * self.eta**s) + n0 = np.ceil(np.floor((self.max_SH_iter)/(s+1)) * self.eta**s) ns = [max(int(n0*(self.eta**(-i))), 1) for i in range(s+1)] return(SuccessiveHalving(HPB_iter=iteration, num_configs=ns, budgets=self.budgets[(-s-1):], config_sampler=self.config_generator.get_config, **iteration_kwargs)) diff --git a/hpbandster/optimizers/h2bo.py b/hpbandster/optimizers/h2bo.py index b598d30..a664d31 100644 --- a/hpbandster/optimizers/h2bo.py +++ b/hpbandster/optimizers/h2bo.py @@ -140,7 +140,7 @@ def get_next_iteration(self, iteration, iteration_kwargs={}): # number of 'SH rungs' s = max_SH_iter - 1 # number of configurations in that bracket - n0 = int(np.floor((self.max_SH_iter)/(s+1)) * eta**s) + n0 = np.ceil(np.floor((self.max_SH_iter)/(s+1)) * eta**s) ns = np.array([max(int(n0*(eta**(-i))), 1) for i in range(s+1)]) while (ns * budgets[-s-1:]).sum() <= self.budget_per_iteration: diff --git a/hpbandster/optimizers/hyperband.py b/hpbandster/optimizers/hyperband.py index 679f0f1..5687887 100644 --- a/hpbandster/optimizers/hyperband.py +++ b/hpbandster/optimizers/hyperband.py @@ -89,7 +89,7 @@ def get_next_iteration(self, iteration, iteration_kwargs={}): # number of 'SH rungs' s = self.max_SH_iter - 1 - (iteration%self.max_SH_iter) # number of configurations in that bracket - n0 = int(np.floor((self.max_SH_iter)/(s+1)) * self.eta**s) + n0 = np.ceil(np.floor((self.max_SH_iter)/(s+1)) * self.eta**s) ns = [max(int(n0*(self.eta**(-i))), 1) for i in range(s+1)] return(SuccessiveHalving(HPB_iter=iteration, num_configs=ns, budgets=self.budgets[(-s-1):], config_sampler=self.config_generator.get_config, **iteration_kwargs)) diff --git a/hpbandster/optimizers/lcnet.py b/hpbandster/optimizers/lcnet.py index 50e22b2..4f73af3 100644 --- a/hpbandster/optimizers/lcnet.py +++ b/hpbandster/optimizers/lcnet.py @@ -114,7 +114,7 @@ def get_next_iteration(self, iteration, iteration_kwargs={}): # number of 'SH rungs' s = self.max_SH_iter - 1 - (iteration % self.max_SH_iter) # number of configurations in that bracket - n0 = int(np.floor((self.max_SH_iter) / (s + 1)) * self.eta ** s) + n0 = np.ceil(np.floor((self.max_SH_iter) / (s + 1)) * self.eta ** s) ns = [max(int(n0 * (self.eta ** (-i))), 1) for i in range(s + 1)] return (SuccessiveHalving(HPB_iter=iteration, num_configs=ns, budgets=self.budgets[(-s - 1):], diff --git a/setup.py b/setup.py index c224f72..4d870a5 100644 --- a/setup.py +++ b/setup.py @@ -2,7 +2,7 @@ setup( name='hpbandster', - version='0.7.4', + version='0.7.41', description='HyPerBAND on STERoids, a distributed Hyperband implementation with lots of room for improvement', author='Stefan Falkner', author_email='sfalkner@cs.uni-freiburg.de',