Simple evolutionary algorithm in JavaScript in CommonJS format, for node.js and anything else.
NodEO includes the functions necessary to create a simple evolutionary algorithm in JavaScript in CommonJS format, for node.js and anything else that uses that format. Can be (and indeed has been) converted to the browser using Browserify. Check out the presentation I did for FOSDEM in case you want to know more about evolutionary algorithms and how they have been implemented in JavaScript.
We’re right now in an extensive refactoring phase.
Hints/instructions on installing and running it.
npm install nodeo
You can also clone it from this repo:
git clone git@github.com:JJ/nodeo.git
which of course will get you the latest version, probably not in npm yet.
If you want to generate documentation from the source, you will have to install
it independently via npm i -g docco
. It’s been eliminated from the source due
to its state of maintenance, which is poor.
If you have downloaded it from npm
, it’s already tested. If you have cloned it,
npm install
npm test
There’s a simple evolutionary algorithm in the app
directory of this
repository. Run
node app/ea.js
or
node app/classic-ea.js
from the command line, for the version with a bit more complicated data structures and no cached fitness function (lighter on the memory front).
You can try and add your own stuff to the library. Work in progress
Please use GitHub issues and I’ll try to help you.