Back

Explore Courses Blog Tutorials Interview Questions
0 votes
3 views
in AI and Deep Learning by (50.2k points)

I have a good basis on Evolutionary Algorithms, so now I started to read about Artificial Neural Networks. I come across this tutorial on http://www.ai-junkie.com/ann/evolved/nnt2.html, showing how to use an ANN to evolve Tanks that collect mines. It uses a GA to evolve the input weights on each Neuron.

I know I could use GA (without the ANN) to solve the same problem. I already created a Tetris Bot using the only GA to optimize the weights in the grid evaluation function (check my blog http://www.bitsrandomicos.blogspot.com.br/).

My question is: what's the conceptual/practical difference between using an ANN + GA in a situation where I could use GA alone? I mean, is my Tetris Bot an ANN? (I don't think so).

Thanks!

1 Answer

0 votes
by (108k points)

Neural nets and Genetic algorithm are totally different things which achieve totally different objectives. The neural net is a way to describe a mapping (function) and the genetic algorithm is an optimization process. Thus they cannot be compared.

Neural Networks coupled with Genetic Algorithms can really accelerate the learning process to solve a certain problem.

From an optimization/mathematical point of view, Neural nets are a way to describe a trainable function that is known to perform very well on a wide variety of tasks.

Since NNs required a lot of data, and GAs didn’t. GAs was used mostly to simulate environments and behaviors of entities in a population. They were mostly used to learn the path to a problem that we knew the answer to.

NNs have helped us solve so many problems. But there’s a huge problem that they still have that is hyperparameters(Hyper-parameters are values required by the NN to perform properly, given a problem). These are the only values that can not be learned.

We can use GAs to learn the best hyper-parameters for a NN!

When you create a Tetris bot you do not necessarily have to use an ANN as a function approximator. But you need some kind of function approximator to represent your bot's policy. But when you want to create a complex nonlinear policy you could do that with an ANN.

Welcome to Intellipaat Community. Get your technical queries answered by top developers!

29.3k questions

30.6k answers

501 comments

104k users

Browse Categories

...