Skip to main content

A framework for creating evolutionary computations in Python.

Project description

ECsPy (Evolutionary Computations in Python) is a free, open source framework for creating evolutionary computations in Python. Additionally, ECsPy provides an easy-to-use canonical genetic algorithm (GA), evolution strategy (ES), estimation of distribution algorithm (EDA), differential evolution algorithm (DEA), and particle swarm optimizer (PSO) for users who don’t need much customization.

Requirements

  • Requires at least Python 2.6 (not compatible with Python 3+).

  • Numpy and Matplotlib are required if the line plot observer is used.

  • Parallel Python (pp) is required if parallel_evaluation_pp is used.

License

This package is distributed under the GNU General Public License version 3.0 (GPLv3). This license can be found online at http://www.opensource.org/licenses/gpl-3.0.html.

Package Structure

ECsPy consists of the following modules:

  • analysis.py – provides tools for analyzing the results of an EC

  • archivers.py – defines useful archiving methods, particularly for EMO algorithms

  • benchmarks.py – defines several single- and multi-objective benchmark optimization problems

  • ec.py – provides the basic framework for an EvolutionaryComputation and specific ECs

  • emo.py – provides the Pareto class for multiobjective optimization along with specific EMOs (e.g. NSGA-II)

  • evaluators.py – defines useful evaluation schemes, such as parallel evaluation

  • migrators.py – defines a few built-in migrators, including migration via network and migration among concurrent processes

  • observers.py – defines a few built-in observers, including screen, file, and plotting observers

  • replacers.py – defines standard replacement schemes such as generational and steady-state replacement

  • selectors.py – defines standard selectors (e.g., tournament)

  • swarm.py – provides a basic particle swarm optimizer

  • terminators.py – defines standard terminators (e.g., exceeding a maximum number of generations)

  • topologies.py – defines standard topologies for particle swarms

  • variators.py – defines standard variators (crossover and mutation schemes such as n-point crossover)

Resources

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ecspy-1.1.tar.gz (173.0 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page