def train_optimzation_model(self, train_daylist, distinct): daytest = self.select_test_day(train_daylist) y_train = [] X_train = [] for day in daytest: for slice in range(144): dateslice = day + '-' + str(slice + 1) #feature, label = self.generateFeatureLabel(dateslice, distinct) feature, label = self.feature.generate(dateslice, distinct) #print(feature,label) #print(feature1,label1) #print("-----------") if feature != None: X_train.append(feature) y_train.append(label) opt = optimization() opt.fit(X_train, y_train) return opt
if __name__ == '__main__': print("Bacterial Foraging Optimization Algorithm") print("Dimension: ", dimension) # For tracking global minima. ;) results = {'c_space': c_space, 'c_prob': c_prob, 'c_tumble': c_tumble} res = {} for i in range(num): best = INF # the best solution found during the search fe_count = 0 # number of objective function evaluations # search space [-100, 100]^dimension c_tumble, c_space, c_prob, space = initialize_space( space, -100.0, 100.0) # random initialization within the search space population, c_space, fe_count, best = initialize_population( i+1, population, c_space, fe_count, best) # minimization of objective function best, iteration_values = optimization( i+1, population, c_space, fe_count, best, c_prob, c_tumble) if best == 0.0: results[str(i+1)] = 1.0 else: results[str(i+1)] = best res[str(i+1)] = iteration_values # with open('data.py', 'a') as f: # f.write(dumps(results, sort_keys=True) + '\n') with open('data_graphs.py', 'a') as f: f.write(dumps(res, sort_keys=True) + '\n') print("Updated!")
1: "sphere", 2: "rastrigin", 3: "rosenbrock", 4: "schwefel", 5: "quartic", 6: "ackley", 7: "schaffer", 8: "griewank", 9: "matyas", 10: "trid" } results = {} for i in range(num): best = INF # the best solution found during the search fe_count = 0 # number of objective function evaluations # search space [-100, 100]^dimension space = initialize_space(space, -100.0, 100.0) # random initialization within the search space population, fe_count, best = initialize_population( i+1, population, space, fe_count, best) # minimization of objective function best = optimization(i+1, population, space, fe_count, best) if best == 0.0: results[func_dict[i+1]] = 1.0 else: results[func_dict[i+1]] = best with open('data.py', 'a') as f: f.write(dumps(results, sort_keys=True) + '\n') print("Updated!")