evo is neuroevolution framework based upon Dr. Kenneth Stanley's NEAT and subsequent extensions. Built from the ground up from the research papers and online articles, this implementation strives to be performant and extensible. See the wiki for more details.
NOTE: This is the second incarnation of EVO. Having survived the growing pains of the original, I decided to update the library based on my experience and continued reading. The prior version is archived under the archive-20180109 branch.
To start using EVO, install Go and run go get
:
$ go get github.com/klokare/evo/...
The library relies on packages from gonum which have their own dependencies. Some of those, like gopdf, require the use of Mercurial for the above go get
command to work. If you see the following error, install Mercurial and then reissue the go get
command.
$ go get github.com/klokare/evo/...
go: missing Mercurial command. See https://golang.org/s/gogetcmd
...
For further information on using, see the examples and peruse the wiki.
Version | Description |
---|---|
0.1 | core library and tests (completed) |
0.2 | default configurer (completed) |
0.3 | default network and translator (completed) |
0.4 | NEAT-equivalent package and XOR experiment (completed) |
0.5 | |
0.6 | HyperNEAT package and boxes experiment (completed) |
0.7 | configurer rewrite, removal of functional options |
0.8 | ES-HyperNEAT package and mazes experiment |
0.9 | novelty package and updated mazes experiment |
0.10 | real-time package |
1.0 | production-ready release |