for i in range(data_size): for j in range(input_size): input_bit = (i >> j) & 1 data[i, j] = float(input_bit) target[i] = float(random.randint(0, 1)) return (data, target.view(-1, 1)) def create_case_data(self, case): input_size = min(3 + case, 7) data, target = self.create_data(input_size, case) return sm.CaseData(case, Limits(), (data, target), (data, target)).set_description( "{} inputs".format(input_size)) class Config: def __init__(self): self.max_samples = 1000 def get_data_provider(self): return DataProvider() def get_solution(self): return Solution() # If you want to run specific case, put number here BestSol = {"steps": 10000, "LR": 0, "HS": 0} sm.SolutionManager(Config()).run(case_number=-1) #print("Best parameters: LR = {}, HS = {}, solves in {} steps".format(BestSol["LR"],BestSol["HS"],BestSol["steps"]))
train_data = self.select_data(self.train_data, digits) test_data = self.select_data(self.test_data, digits) return sm.CaseData( case, Limits(), train_data, test_data).set_description(description).set_output_size(10) class Config: def __init__(self): self.max_samples = 1000 def get_data_provider(self): return DataProvider() def get_solution(self): return Solution() # If you want to run specific case, put number here BestSol = {"time": 10000, "steps": 10000, "LR": 0, "HS": 0} DoGridSearch = False if DoGridSearch: MyCaseNumber = 10 else: MyCaseNumber = -1 sm.SolutionManager(Config()).run(MyCaseNumber) if DoGridSearch: print("Best parameters: LR = {}, HS = {}, solves in {} s and {} steps". format(BestSol["LR"], BestSol["HS"], BestSol["time"], BestSol["steps"]))