def optimize(self, run_f, params): search_tree = SearchSpace(params) lb = search_tree.get_lb() ub = search_tree.get_ub() f = param_decorator(run_f, search_tree) gs = RandomSearch(self.num_runs, lb, ub, self.sobol) start = timeit.default_timer() best_params, score = gs.optimize(f) end = timeit.default_timer() - start best_params = search_tree.transform(best_params) Result = namedtuple('Result', ['params', 'score', 'time']) return Result(best_params, score, end)
def optimize(self, run_f, params, parallel=False): search_tree = SearchSpace(params) lb = search_tree.get_lb() ub = search_tree.get_ub() f = Evaluator(run_f, search_tree) algorithm = self.algorithm(lb, ub, parallel, *self.args, **self.kwargs) start = timeit.default_timer() best_params, score = algorithm.run(f) end = timeit.default_timer() - start best_params = search_tree.transform(best_params) # Result = namedtuple('Result', ['params', 'score', 'time']) return Result(best_params, score, end)
def optimize(self, run_f, params): search_tree = SearchSpace(params) lb = search_tree.get_lb() ub = search_tree.get_ub() f = param_decorator(run_f, search_tree) pso = PSO(self.num_generations, self.num_particles, lb, ub, self.phi1, self.phi2) start = timeit.default_timer() best_params, score = pso.optimize(f) end = timeit.default_timer() - start best_params = search_tree.transform(best_params) Result = namedtuple('Result', ['params', 'score', 'time']) return Result(best_params, score, end)