gpt4 book ai didi

python - DEAP遗传算法

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:18:17 25 4
gpt4 key购买 nike

我目前在 Python 中使用 DEAP 进行遗传算法。我想创建一个长度为 no_sensors 的初始个体群体。但我的问题是,由于 random.choice(nodes) 函数,一些节点最终相同并且初始长度最终小于 no_sensors。我想知道是否有办法解决这个问题:

creator.create("FitnessMax", base.Fitness, weights=(2.0, -1.0))
creator.create("Individual", set, fitness=creator.FitnessMax)

toolbox = base.Toolbox()
toolbox.register("attr_item", random.choice, nodes)
toolbox.register("individual", tools.initRepeat, creator.Individual, toolbox.attr_item, n=no_sensors)
toolbox.register("population", tools.initRepeat, list, toolbox.individual)

基本上,我需要来自列表 nodes 的固定长度的唯一项。我正在考虑使用 random.sample(nodes, no_sensors) 但我似乎无法将其合并到代码中而不会产生错误

您可以查看其他示例 here .

最佳答案

您可以使用 functools.partialrandom.sample:

from functools import partial
import random
no_sensors = 5
mysample = partial(random.sample,k=no_sensors)
toolbox.register("attr_item", mysample, nodes)

关于python - DEAP遗传算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40508825/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com