Esempio n. 1
0
def write_mesh(fronts, name):
    counter = 0
    for front in fronts:
        for indiv in front:
            mesh = Analyser(str(indiv.phenotype))
            mesh.create_graph()
            filename = FRONT_FOLDER + "/" + name + "." + str(counter)
            mesh.create_mesh(filename)
            counter += 1
Esempio n. 2
0
def print_stats(generation, individuals):
    global TIME

    def ave(values):
        return float(sum(values)) / len(values)

    def std(values, ave):
        return math.sqrt(
            float(sum((value - ave)**2 for value in values)) / len(values))

    newTime = time.time()
    genTime = newTime - TIME
    TIME = newTime
    ave_beam = ave(
        [i.beamTotal for i in individuals if i.phenotype is not None])
    std_beam = std(
        [i.beamTotal for i in individuals if i.phenotype is not None],
        ave_beam)
    ave_fit = ave(
        [i.fitness[0] for i in individuals if i.phenotype is not None])
    std_fit = std(
        [i.fitness[0] for i in individuals if i.phenotype is not None],
        ave_fit)
    ave_used_codons = ave(
        [i.used_codons for i in individuals if i.phenotype is not None])
    std_used_codons = std(
        [i.used_codons for i in individuals if i.phenotype is not None],
        ave_used_codons)
    print(
        "Gen:%d best:%s beams:s:%d ave:%.1f+-%.1f Used:%.1f+-%.1f tt:%.2f beams:%d+-%.1f"
        % (generation, individuals[0].fitness, individuals[0].beamTotal,
           ave_fit, std_fit, ave_used_codons, std_used_codons, genTime,
           ave_beam, std_beam))

    if SAVE_BEST:
        print "saving best individual"
        bestMesh = Analyser(individuals[0].phenotype)
        filename = 'xxx.' + str(generation)
        bestMesh.create_mesh(filename)