16 votes
Accepted

What exactly are genetic algorithms and what sort of problems are they good for?

Evolutionary algorithms are a family of optimization algorithms based on the principle of Darwinian natural selection. As part of natural selection, a given environment has a population of individuals ...
12 votes
Accepted

How should I encode the structure of a neural network into a genome?

Section 4.2 of "Essentials of Metaheuristics" has a wealth of information on alternative ways of encoding graph structures via Genetic Algorithms. With particular regard to evolving ANNs, I would ...
9 votes

What exactly are genetic algorithms and what sort of problems are they good for?

A genetic algorithm is an algorithm that randomly generates a number of attempted solutions for a problem. This set of attempted solutions is called the "population". It then tries to see how well ...
  • 1,174
8 votes
Accepted

What is a trap function in the context of a genetic algorithm?

"Trap" functions were introduced as a way to discuss how GAs behave on functions where sampling most of the search space would provide pressure for the algorithm to move in the wrong direction (wrong ...
  • 446
8 votes

How does novelty search work?

As explained in an answer to this AI SE question, GAs are 'satisficers' rather than 'optimizers' and tend not to explore 'outlying' regions of the search space. Rather, the population tends to cluster ...
8 votes
Accepted

What is the difference between reinforcement learning and evolutionary algorithms?

Evolutionary algorithms (EAs) are a family of algorithms inspired by the biological evolution that can be used to solve (constrained or not) optimization problems where the function that needs to be ...
  • 35k
7 votes
Accepted

Why is cross-over a part of genetic algorithms?

Mutation is usually defined to be a global operator, i.e. iterated mutation is (eventually) capable of reaching every point in the vector space defined by the geneome. In that sense, mutation alone is ...
7 votes
Accepted

How do evolutionary algorithms have advantages over the conventional backpropagation methods?

Unlike backpropagation, evolutionary algorithms do not require the objective function to be differential with respect to the parameters you aim to optimize. As a result, you can optimize "more things" ...
7 votes

How does novelty search work?

Novelty search selects for "novel behavior", by some domain-dependent definition of novelty. For example, novelty in a Maze-solving domain might be "difference of route explored". Eventually, networks ...
  • 171
7 votes

What evolutionary algorithms are there that model epigenetics?

Over the last few years, evolutionary computation research has shown increasing interest in including some aspect of epigenetics. For example: A 2008 paper by Tanev and Yuta Work from Lee Spector's ...
7 votes

What exactly are genetic algorithms and what sort of problems are they good for?

There are a number of good answers here explaining what genetic algorithms are, and giving example applications. I'm adding some general purpose advice on what they are good for, but also cases where ...
  • 1,134
7 votes

What exactly are genetic algorithms and what sort of problems are they good for?

This answer requests a practical example of how one might be used, which I will attempt to provide in addition to the other answers. They seem to due a very good job of explaining what a genetic ...
  • 171
6 votes

What exactly are genetic algorithms and what sort of problems are they good for?

As observed in another answer, all you need to apply Genetic Algorithms (GAs) is to represent a potential solution to your problem in a form that is subject to crossover and mutation. Ideally, the ...
6 votes

How do evolutionary algorithms have advantages over the conventional backpropagation methods?

Further to Franck's answer, there may be better optima (even global optima) that exist in the opposite direction to the gradient (which may be in the direction of some local optima). Evolutionary ...
6 votes
Accepted

How can genetic programming be used for path planning?

Take a robot that we want to be able to move from the bottom right corner to the top left corner of a 4x4 matrix full of random holes it should avoid. With holes represented by 1s, it could look ...
  • 221
6 votes

What is the name of an AI whose primary goal is to create a better AI?

I don't think there is a single standard word or phrase that covers just this concept. Perhaps recursive self-improvement matches the idea concisely - but that is not specific AI jargon. Very little ...
  • 24.6k
5 votes

What is the purpose of hidden nodes in neural network?

A feed forward neural network without hidden nodes can only find linear decision boundaries. However, most of the time you need non-linear decision boundaries. Hence you need hidden nodes with a non-...
  • 1,005
5 votes
Accepted

Is it possible to separately evolve a part of the population?

There have been extensive studies within evolutionary computation in the area of island models and niching for doing exactly this. The advantages of this approach include greater population diversity (...
5 votes

How does mating take place in NEAT?

NEAT has a constant number of organisms in its population, which prevents overpopulation from happening. The process of mating includes the following steps. The worst networks from every species ...
  • 151
5 votes
Accepted

Can an evolutionary algorithm adapt to a changing environment?

The core question to whether or not an AI is adaptable or not is whether or not it supports online learning. That doesn't mean using the Internet to learn things; that means continuing to accept ...
5 votes

Why is cross-over a part of genetic algorithms?

Crossover allows to combine two parents (vs. mutation, which only uses one parent). In some cases, it is useful (e.g., if you train a FPS bot, if one parent is good at shooting and another parent is ...
5 votes
Accepted

What is the difference between "mutation" and "crossover"?

The mutation is an operation that is applied to a single individual in the population. It can e.g. introduce some noise in the chromosome. For example, if the chromosomes are binary, a mutation may ...
  • 35k
5 votes
Accepted

Can neural networks evolve other neural networks?

Yes, this is an active area of research as we speak. Both using classic algorithms (decision trees, random forests, Bayesian ensembles) as well as neural networks. This can also be done via ...
4 votes

Why is cross-over a part of genetic algorithms?

When thinking about crossover its important to think about the fitness landscape. Consider a hypothetical scenario where we are applying a genetic algorithm to find a solution that performs well at ...
4 votes
Accepted

Are there any machine learning techniques to detect coding standard violations?

If the system claims that a piece of code has violated standards, then to be useful to the programmer, it really needs to provide more information than just a 'yes/no' classifier: you need some form ...
4 votes

How should I encode the structure of a neural network into a genome?

Using evolutionary algorithms to evolve neural networks is called neuroevolution. Some neuroevolution algorithms optimize only the weights of a neural network with fixed topology. That sounds not ...
4 votes

Does NEAT require only connection genes to be marked with a global innovation number?

It is actually the other way around: connection IDs is what is debated! Nodes always have innovation IDs (in the image, it is just their identifying number). Node IDs are sufficient to identify ...
  • 216
4 votes
Accepted

How do I design a fitness function that weighs the importance of eating food?

A human analogy can help you here (a variance). Initialize all the agents with an initial value $x$; we will call this energyUnits. I Will talk later more about ...
  • 1,953
4 votes
Accepted

What's the difference between biological and artificial evolution?

Biological and artificial evolution work around pretty much the same principles. Fitness and selection: In biology, the fittest organisms in an ecosystem are more likely to survive long enough to ...
4 votes
Accepted

How to evaluate a NEAT neural network?

Consider the execution order, 5 will have an invalid value because it hasn't been set form 3 yet. However the second time around it should have a value set. The invalid value should falloff after ...
  • 358

Only top scored, non community-wiki answers of a minimum length are eligible