예제 #1
0
print("Generation loop start.")
print("Generation: 0. Best fitness: " + str(best_ind.fitness))
clk0 = 0.0
g = 0
for total_g in range(NGEN):

    '''
    STEP1 : Selection.
    '''

    t0 = time.time()
    # Remove collision path
    if g == 0:
        new_pop = []
        for ind in pop:
            new_path = cc.collision_avoidance(ind)
            if new_path is not None:
                new_pop.append(Individual(new_path))
        pop = new_pop.copy()
        set_fitness(evalOneMax, pop)

    # Elite selection
    elites = selElite(pop, n_elite)
    # Tournament Selection
    offspring = selTournament(pop, n_ind - n_elite, tournsize=3)

    '''
    STEP2 : Mutation.
    '''

    t1 = time.time()