Мы используем файлы cookie.
Продолжая использовать сайт, вы даете свое согласие на работу с этими файлами.
DEAP (software)
Другие языки:

    DEAP (software)

    Подписчиков: 0, рейтинг: 0
    DEAP
    Original author(s) François-Michel De Rainville, Félix-Antoine Fortin, Marc-André Gardner, Marc Parizeau, Christian Gagné
    Developer(s) François-Michel De Rainville, Félix-Antoine Fortin, Marc-André Gardner
    Initial release 2009 (2009)
    Stable release
    1.3.3 Edit this on Wikidata / 8 August 2022 (8 August 2022)
    Repository
    Written in Python
    Operating system Cross-platform
    Type Evolutionary computation framework
    License LGPL
    Website github.com/deap

    Distributed Evolutionary Algorithms in Python (DEAP) is an evolutionary computation framework for rapid prototyping and testing of ideas. It incorporates the data structures and tools required to implement most common evolutionary computation techniques such as genetic algorithm, genetic programming, evolution strategies, particle swarm optimization, differential evolution, traffic flow and estimation of distribution algorithm. It is developed at Université Laval since 2009.

    Example

    The following code gives a quick overview how the Onemax problem optimization with genetic algorithm can be implemented with DEAP.

    import array
    import random
    from deap import creator, base, tools, algorithms
    
    creator.create("FitnessMax", base.Fitness, weights=(1.0,))
    creator.create("Individual", array.array, typecode='b', fitness=creator.FitnessMax)
    
    toolbox = base.Toolbox()
    toolbox.register("attr_bool", random.randint, 0, 1)
    toolbox.register("individual", tools.initRepeat, creator.Individual, toolbox.attr_bool, 100)
    toolbox.register("population", tools.initRepeat, list, toolbox.individual)
    
    evalOneMax = lambda individual: (sum(individual),)
    
    toolbox.register("evaluate", evalOneMax)
    toolbox.register("mate", tools.cxTwoPoint)
    toolbox.register("mutate", tools.mutFlipBit, indpb=0.05)
    toolbox.register("select", tools.selTournament, tournsize=3)
    
    population = toolbox.population(n=300)
    NGEN = 40
    
    for gen in range(NGEN):
        offspring = algorithms.varAnd(population, toolbox, cxpb=0.5, mutpb=0.1)
        fits = toolbox.map(toolbox.evaluate, offspring)
        for fit, ind in zip(fits, offspring):
            ind.fitness.values = fit
        population = offspring
    

    See also

    External links


    Новое сообщение