May 25, 2013

Book: Handbook of Neuroevolution Through Erlang

What is Neuroevolution? (Wikipedia):
Neuroevolution, or neuro-evolution, is a form of machine learning that uses evolutionary algorithms to train artificial neural networks. It is useful for applications such as games and robot motor control, where it is easy to measure a network's performance at a task but difficult or impossible to create a syllabus of correct input-output pairs for use with a supervised learning algorithm. In the classification scheme for neural network learning these methods usually belong in the reinforcement learning category.

Amazon's Book Description:
Handbook of Neuroevolution Through Erlang presents both the theory behind, and the methodology of, developing a neuroevolutionary-based computational intelligence system using Erlang. With a foreword written by Joe Armstrong, this handbook offers an extensive tutorial for creating a state of the art Topology and Weight Evolving Artificial Neural Network (TWEANN) platform. In a step-by-step format, the reader is guided from a single simulated neuron to a complete system. By following these steps, the reader will be able to use novel technology to build a TWEANN system, which can be applied to Artificial Life simulation, and Forex trading. Because of Erlang’s architecture, it perfectly matches that of evolutionary and neurocomptational systems. As a programming language, it is a concurrent, message passing paradigm which allows the developers to make full use of the multi-core & multi-cpu systems. Handbook of Neuroevolution Through Erlang explains how to leverage Erlang’s features in the field of machine learning, and the system’s real world applications, ranging from algorithmic financial trading to artificial life and robotics.

* * *

Disclaimer: I'm not an AI expert -- it's just my personal interest.

When I first started to study Erlang, I was very excited that it is the language for ANN.  And while I reading/studying on GA/GP -- it seems natural that ANN and GA/GP should be emerge.

I wanted to find more on ANN in Erlang implementation but I only found very few resources and examples (may be I didn't try hard enough) -- unfortunately, they were all very rudimentary basic ANN implementation, more of a proof-of-concept.  I also wanted to find a way to combine ANN and GA/GP.  Then I found this book.  It felt like I struck a gold mine -- I ordered the book right away.  I'm still in the middle of it and I enjoy every minute of reading it.  I highly recommend this book.


No comments: