我想在 GP 中使用不止一种变异方法,例如 mutUniform 和 mutEmphemeral。但是所有的算法都只能接收一个参数。有没有办法可以解决这个问题?
问问题
34 次
1 回答
0
假设您已经定义mutUniform
和mutEmphemeral
,您可以定义一个新的突变函数来运行这两个突变,并将该新函数注册到您的工具箱中。
这看起来有点像
def mutMyWay(individual, mutpb, uniform_parameters, emphemeral_parameters):
if random.random()<mutpb:
individual = mutUniform(individual, *uniform_parameters)
individual = mutEmphemeral(individual, *emphemeral_parameters)
toolbox.register('mutate', mutMyWay)
于 2019-11-08T09:22:54.113 回答