if __name__ == '__main__': no_of_iterations = int(input("No. of iterations = ")) mutation_probability = float(input("mutation probability = ")) A = [1, 2, 3, 4, 5, 6] S = [[0, 1], [2, 3], [4, 5]] S2 = [[0, 1, 2], [3, 4, 5]] population = Population(get_population(6)) algorithm = Algorithm(A, S) ft = [] for i in range(no_of_iterations): population = algorithm.compute(population, mutation_probability) el = max(population.getAll(), key=lambda x: algorithm.fitness(x)) ft.append(algorithm.fitness(el)) print("Fitness = " + str(algorithm.fitness(el))) print("Elem = " + str(el)) print("\n") population.get_population().sort(key=lambda x: algorithm.fitness(x)) fitness_optim, individual_optim = algorithm.fitness( population.get(0)), population.get(0) print("Optimum fitness = " + str(fitness_optim)) print("Optimum Individual = " + str(individual_optim)) plot.plot(ft) plot.ylabel("Fitness")
if __name__ == '__main__': no_of_iterations = int(input("No. of iterations = ")) mutation_probability = float(input("mutation probability = ")) dim = [1, 3, 2, 2, 5, 4] colors = [1, 1, 1, 1, 1, 1] population = Population(compute_random_perm(6)) algorithm = Algorithm(dim, colors) for i in range(no_of_iterations): population = algorithm.compute(population, mutation_probability) population.get_population().sort(key=lambda x: algorithm.fitness(x)) fitness_optim, individual_optim = algorithm.fitness( population.get(0)), population.get(0) print("Optimum fitness = " + str(fitness_optim)) print("Optimum Individual = \n") perm = individual_optim.get_perm() for i in perm: print("[" + str(dim[i]) + ", " + str(colors[i]) + "]") # for i in population.get_population(): # print (algorithm.fitness(i))