An Implementation of this paper: Accelerated Neural Evolution through Cooperatively Coevolved Synapses
"Hey look, a reproducable paper!"
"Look ma, no gradients!"
An implementation of a simple 3 layer ANN, which evolves it's weights using a Cooperative Coevolutionary method.
Implemented with Numpy (and soon, PyTorch!)
This algorithim was originally developed for Reinforcement learning. I wrote this on a hunch that this is still the State of the Art for fixed architecture networks. but my main priority is getting it put onto the GPU - a considerably tougher task than anticipated.
If a GPU implementation isn't possible, than I will implement it in Numba and then attempt to use it to solve simple reinforcement learning problems... maybe flappybird?