"best fit: %.4f" % (np.log(fitness_vector[best_index])), "index: %d" % best_index, "MSE: %.4f" % GenAlg.SquareLoss(best_fitness)]) print(informLine_temp) informLines.append(informLine_temp) saveLog(log_name, GA, informLines, date_round) # Save iteration information after every iteration if (GA.criteria(best_fitness) == "converge"): print("The algorithm meets its criteria, therefore stopped. ") informLine_best = "Best fitness value: %.4f" % global_best_fitness print(informLine_best) informLines += ["The algorithm meets its criteria, therefore stopped. "] informLines += [informLine_best] initial_bezier_airfoil = GenAlg.BezierFitForOne(initial_best_airfoil) best_bezier_airfoil = GenAlg.BezierFitForOne(global_best_airfoil) plotList = [initial_bezier_airfoil, best_bezier_airfoil] GenAlg.plotBestFig(plotList, int((gen+1)/10)) for i in range(len(pop_new)): optim_dict[str(i+1)] = pop_new[i] break # Save reesults every 10 eopchs if ((gen+1) % 10 == 0): informLine_best = "Best fitness value: %.4f" % global_best_fitness print(informLine_best) informLines += [informLine_best] initial_bezier_airfoil = GenAlg.BezierFitForOne(initial_best_airfoil) best_bezier_airfoil = GenAlg.BezierFitForOne(global_best_airfoil) # print(global_best_airfoil[0:4,:]) plotList = [initial_bezier_airfoil, best_bezier_airfoil]