小编Tek*_*kin的帖子

如何为 python 中的 deap 包创建一个包含不同范围内的随机数的列表

我正在 Python 中使用 DEAP 包编写一个程序,用于使用进化算法(特别是遗传算法)进行优化。

我需要使用 python 中的列表类型创建染色体。该染色体应该有五个不同范围的浮动基因(等位基因)。

我的主要问题是创造这样的染色体。但是,如果我可以使用 deap 包的 tools.initRepeat 函数来实现这一点,那就更好了。

对于所有基因都在同一范围内的情况,我们可以使用以下代码:

import random

from deap import base
from deap import creator
from deap import tools

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

IND_SIZE=10

toolbox = base.Toolbox()
toolbox.register("attr_float", random.random)
toolbox.register("individual", tools.initRepeat, creator.Individual,
                 toolbox.attr_float, n=IND_SIZE)
Run Code Online (Sandbox Code Playgroud)

我从这里得到的。

python genetic-algorithm evolutionary-algorithm deap

3
推荐指数
1
解决办法
1554
查看次数