Archived project

NeuroEvolution of Augmented Topologies

Goal: This project is related to implementation of NEAT algorithm in GO programming language and conducting series of experiments in Reinforcement Learning (RL) domain to test if algorithm is able to solve classic RL tasks.

Methods: Artificial Neural Network, Unsupervised Learning, Neuroevolution, Reinforcement Learning, Neural Networks

Date: 8 September 2017 - 5 December 2017

Updates
0 new
1
Recommendations
0 new
0
Followers
0 new
1
Reads
0 new
209

Project log

Iaroslav Omelianenko
added an update
The source code of implementation can be found at: https://github.com/yaricom/goNEAT
 
Iaroslav Omelianenko
added 2 research items
The NeuroEvolution (NE) is an artificial evolution of Neural Networks (NN) using genetic algorithms in order to find optimal NN parameters and topology. NeuroEvolution of NN may assume search for optimal weights of connections between NN nodes as well as search for optimal topology of resulting NN. The NEAT algorithm implemented in this work do search for both: optimal connections weights and topology for given task (number of NN nodes per layer and their interconnections). The basic system's performance is evaluated by two kind of experiments: • The XOR experiment which test whether topology augmenting actually happens by NEAT algorithm evaluation. To build XOR solving network the NEAT algorithm should grow new hidden unit in the provided start genome. • The pole balancing experiments which is classic Reinforcement Learning experiment allowing us to estimate performance of NEAT algorithm against proven results by many of other algorithms. I.e. we can benchmark NEAT performance against other algorithms and find out if it performs better or worse.
This article presents how to build and train Artificial Neural Networks by NEAT algorithm. It will consider weakness of current Gradient Descent based training methods and shows a way to improve it. (Original article was published by author at Medium: https://medium.com/@io42/neuroevolution-evolving-artificial-neural-networks-topology-from-the-scratch-d1ebc5540d84)
Iaroslav Omelianenko
added a project goal
This project is related to implementation of NEAT algorithm in GO programming language and conducting series of experiments in Reinforcement Learning (RL) domain to test if algorithm is able to solve classic RL tasks.