Py-deap

Jul 20, 2023

Distributed Evolutionary Algorithms in Python

DEAP is a novel evolutionary computation framework for rapid prototyping and testing of ideas. It seeks to make algorithms explicit and data structures transparent. It works in perfect harmony with parallelisation mechanisms such as multiprocessing and SCOOP.

DEAP includes the following features

  • Genetic algorithm using any imaginable representation o List, Array, Set, Dictionary, Tree, Numpy Array, etc.
  • Genetic programing using prefix trees o Loosely typed, Strongly typed o Automatically defined functions
  • Evolution strategies including CMA-ES
  • Multi-objective optimisation NSGA-II, SPEA2, MO-CMA-ES
  • Co-evolution cooperative and competitive of multiple populations
  • Parallelization of the evaluations and more
  • Hall of Fame of the best individuals that lived in the population
  • Checkpoints that take snapshots of a system regularly
  • Benchmarks module containing most common test functions
  • Genealogy of an evolution that is compatible with NetworkX
  • Examples of alternative algorithms Particle Swarm Optimization, Differential Evolution, Estimation of Distribution Algorithm


Checkout these related ports:
  • Zn_poly - C library for polynomial arithmetic
  • Zimpl - Language to translate the LP models into .lp or .mps
  • Zegrapher - Software for plotting mathematical objects
  • Zarray - Dynamically typed N-D expression system based on xtensor
  • Z3 - Z3 Theorem Prover
  • Yices - SMT solver
  • Yacas - Yet Another Computer Algebra System
  • Xtensor - Multi-dimensional arrays with broadcasting and lazy computing
  • Xtensor-python - Python bindings for xtensor
  • Xtensor-io - Xtensor plugin to read/write images, audio files, numpy npz and HDF5
  • Xtensor-blas - BLAS extension to xtensor
  • Xspread - Spreadsheet program for X and terminals
  • Xppaut - Graphical tool for solving differential equations, etc
  • Xplot - X11 plotting package
  • Xlife++ - XLiFE++ eXtended Library of Finite Elements in C++