Как установить специфическую хромосому в популяции для генетического алгоритма в DEAP Python

Я использую DEAP в Python и использую там генетический алгоритм. Ниже приводится определение атрибутов (хромосомы) с размером 100,

toolbox.register("attr_bool", random.randint, 0, 1)

Следующее выражение создает популяцию с 300 размерами, в которой каждый отдельный столбец является хромосомой или решением.

pop = toolbox.population(n=300)

Мой вопрос, как я могу заставить pop иметь колонку (хромосому или раствор) все 1, Я хочу убедиться, что есть решение с вектором 1 в популяции.

1 ответ

Вы можете попробовать это:

def make_bool(x):
    return (x)

toolbox.register("bit_1", make_bool, 1)
toolbox.register("indiv_1", tools.initRepeat, creator.Individual, toolbox.bit_1, 100)   

all_one = toolbox.indiv_1()
pop.append(all_one)
Другие вопросы по тегам