Python DEAP - 自定义适应度函数

4
我的问题是关于在DEAP/Python中实现自定义适应函数的可能性,这与我的遗传编程实现有关。
经过搜索和阅读DEAP官方文档,我没有找到任何相关内容,所以如果您能帮助我,我会非常感激。
谢谢。
1个回答

2

你确定需要自定义适应度函数吗?

有点混淆,但你可能是指自定义评估函数。这个函数应该返回一个数字,然后适应度函数试图最大化或最小化。

一个很好的例子是https://deap.readthedocs.io/en/master/examples/ga_onemax.html

在这个教程中,设置了标准的最大化适应度函数:

creator.create("FitnessMax", base.Fitness, weights=(1.0,))
creator.create("Individual", list, fitness=creator.FitnessMax)

紧接着是“自定义”评估函数:
def evalOneMax(individual):
    return sum(individual),

然后将其注册到工具箱中:

toolbox.register("evaluate", evalOneMax)

哇!我之前没有意识到这一点,真的那是正确的方式,谢谢! - Cristiano Siebert
我曾经遇到过同样的问题。在进化计算中,评估函数通常被称为适应度函数。我认为DEAP使用评估函数将基因型映射到质量测量上。然后使用适应度函数来比较这个测量值。 - Talos

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接