Evolutionary Neural Network is a variant of an artificial neural network created for my final year project. It's aim is to provide an effective supervised learning solution to reproducing game AI. To improve efficiency the neural network takes advantage of a genetic algorithm to adapt the intricate internal parameters within itself to aid with improved error reduction.
Written in C++, the Evolutionary Neural Network (ENN) is a powerful tool for artificial intelligence. The tool is abstracted to give it the ability to be applied to many different problem domains.
The evolutionary neural network tool works by using what is known as a back-propagation neural network to reduce the output error of the network given a set number of inputs. This technique is called 'gradient descent'. This network is different in that it also takes advantage of a internal genetic algorithm which has the aim of deducing the optimum internal parameters for the type of data it is being fed during training. In the above image, the network was trained on a multitude of training sets of in-game data i.e. velocities, euclidean distances. Each set will differ from the next. Therefore, the GA will cleverly find the optimum parameters to be able to train from the training set to produce the least amount of error. It is quite effective albeit a pedantic approach.