#smaller stru ts, less play but faster convergence..... GA = Evolution(num_struts = num_bars, strut_length = 10, max_gen=1000,init_size =population, pop_size=population, mutation_rate=m_rate, \ selection_rate = s_rate, selection_pressure = s_pressure,elite_rate=e_rate) #Essentailly just have an autmated hill climber rn, b/c mutation rate is so highself. GA.load(load) GA.eps = 1 while GA.alive(): if GA.current_gen % 25 == 0: GA.save(population) print("----------------------") print("Curr Gen: ", GA.current_gen) print("Pop Sicze", len(GA.pop)) for i in np.arange(len(GA.pop)): drone_structure = GA.pop[i][2] # loop through current population Solver.solve(drone_structure, i) # drones have already been solved so they go very fast fit = GA.fitness(drone_structure) # evaluate drone drone_structure.fitness = fit # update fitness GA.addToQueue(drone_structure, fit) # add drone the the queue GA.niche(niche_radius) GA.rankQueue() if showViz: if GA.current_gen % updatefreq == 0: Viz.plotGraph(FitnessGraph, GA.getMaxFitness(), GA.current_gen, c='red') Viz.plotGraph(FitnessGraph, GA.getAvgFitness(), GA.current_gen,