Skip to main content

Evolving Directed Acyclic Graph

Project description

Build Status

PyPI version

Coverage Status

EvoDAG

Evolving Directed Acyclic Graph (EvoDAG) is a steady-state Genetic Programming system with tournament selection. The main characteristic of EvoDAG is that the genetic operation is performed at the root. EvoDAG was inspired by the geometric semantic crossover proposed by Alberto Moraglio et al. and the implementation performed by Leonardo Vanneschi et al.

Example using command line

Let us assume one wants to create a classifier of iris dataset. The first step is to download the dataset from the UCI Machine Learning Repository

curl -O https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data

In order to train the EvoDAG using a population of 10 individuals, using early stopping to 11, sampling 100 different parameter configurations, creating an ensemble of 12, and using 4 cores then the following command is used:

~/.local/bin/EvoDAG -e 10 -p 11 -r 100 -u 4 -n 12 iris.data

The EvoDAG ensemble is stored in iris.evodag.gz.

Now that the ensemble has been initialized one can predict a test set and store the output in file called output.csv using the following command.

~/.local/bin/EvoDAG -m iris.evodag.gz -t iris.data -o output.csv

Install EvoDAG

  • Install using pip pip install EvoDAG

Using the source code

  • Clone the repository git clone https://github.com/mgraffg/EvoDAG.git

  • Install the package as usual python setup.py install

  • To install only for the use then python setup.py install --user

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

EvoDAG-0.2.7.tar.gz (31.9 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