Skip to content

High Performance CPU Library for Neuro-Evolutionary Learning (NEAT) & Genetic Algorithms for Keras models

License

Notifications You must be signed in to change notification settings

ViRu-ThE-ViRuS/Evolve

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Evolve

CircleCI

Evolution Strategy for Tensorflow Keras-Models

Evolution Strategy (ES) is an optimisation technique based on ideas of adaptation, evolution, mutation, and breeding. It tries to simulate the natural process of selection, and encompasses the survival of the fittest ideaolgy to train an artificial neural network (a fundamentally different appraoch than Gradient Descent) using reinforcement learning.

You can read more about it in a paper by openai.

This implementation can be used to train any model built using Keras api, and openai/gym like environments.

Installation

From the Github Repository:

$ pip install git+https://github.com/ViRu-ThE-ViRuS/Evolve.git
Dependencies
  • use python3

  • install dependencies from requirements.txt:

    $ pip install -r requirements.txt
    

Sample Usage

  • can be found in example.py:

    $ python example.py
    

How To Use

  • documentation is in progress
Installation
  • run setup:
    $ ./scripts/setup.sh
    $ source venv/bin/activate
    
Run Scripts
  • run checks:
    $ ./scripts/check.sh
    
  • run automated fixes:
    $ ./scripts/fix.sh