Exemplo n.º 1
0
def breed():
    alive_number = Constants.POPULATION_SIZE - Constants.KILL_SIZE
    sorted_individuals = [i['parameters'] for i in Database.get_all_individuals_sorted()[:alive_number]]
    for i in range(Constants.KILL_SIZE):
        pick1, pick2 = random.sample(sorted_individuals, 2)
        parameters = genetic.combine_and_mutate(pick1, pick2)
        Database.add_individual_to_current_generation(parameters)
Exemplo n.º 2
0
def index():
    # Check table, populate if empty
    # Show two random individuals in the current gen
    populate_current_generation_if_empty()
    a, b = Database.get_random_individuals(2)
    ar = render_individual(a['parameters'])
    br = render_individual(b['parameters'])
    aid, bid = a['id'], b['id']
    prg = str(float(Database.num_comparisons()) / Constants.COMPARISONS_PER_GENERATION * 100)
    gen = len(Database.get_historical_individuals())
    magic_color = Database.get_all_individuals_sorted()[0]['parameters']['palette_1']
    magic_color = '#%06x' % magic_color

    return render_template('index.html', left_id=aid, left=ar, right_id=bid, right=br, progress=prg, generation=gen, magic_color=magic_color)
Exemplo n.º 3
0
def reset_scores():
    for individual in Database.get_all_individuals_sorted():
        Database.update_elo_for_id(individual["id"],1000.0)
Exemplo n.º 4
0
def kill_unfit():
    sorted_individuals = Database.get_all_individuals_sorted()
    unfit = sorted_individuals[-Constants.KILL_SIZE:]
    Database.delete_individuals(unfit)
Exemplo n.º 5
0
def save_best_to_history():
    sorted_individuals = Database.get_all_individuals_sorted()

    Database.add_historical_individual(sorted_individuals[0])