def generate_new_population(M, seed=True): chrs=[] if seed: # Seeding one chromosome with one # minmin chromosome for _ in itertools.repeat(None, P_SIZE-1): chrs.append(Chromosome(M)) # Seed min-min ch = Chromosome(M, tabu_list=None, empty=True) mapping = minmin.run(M) if DEBUG: print mapping, mapping.makespan() for t in range(mapping._model.ntasks): ch.map.assign(t, mapping.machine(t)) chrs.append(ch) print "Seeded chromosome value:", ch.value() else: # No seeding happens here for _ in itertools.repeat(None, P_SIZE): chrs.append(Chromosome(M)) return chrs