如何在DEAP Python中为遗传算法设置特定染色体

时间:2016-06-17 01:24:05

标签: python random theano genetic-algorithm deap

我在Python中使用DEAP并在那里使用遗传算法。以下是大小为100的属性(染色体)的定义。

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

以下表达式创建一个包含300个大小的群体,其中每个列都是染色体或解决方案。

pop = toolbox.population(n=300)

我的问题是,如何强制pop拥有所有1列(染色体或解决方案)。我想确保在人口中有一个1向量的解决方案。

1 个答案:

答案 0 :(得分: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)