3
$\begingroup$

In the add node mutation, the connection between two chosen nodes (e.g. A and B) is first disabled and then a new node is created between A and B with their respective two connections.

I guess that the former A-B connection can be re-enabled via crossover (is it right?).

Can the former A-B connection also be re-enabled via mutation (e.g. "add connection")?

$\endgroup$
0

2 Answers 2

3
$\begingroup$

Yes, the original gene is disabled, but is left in the genome. This can be seen on page 10, figure 3 of the paper linked (taken from the original paper NEAT Paper) where gene 3 is disabled, but not removed from the genome. This gene can be re-enabled by receiving the gene with the identical innovation number from a mating partner with the gene enabled during crossover.

The original paper does not mention a mutation to re-enable genes, but various other publications and implementations after the original paper do. This is desirable for a number of reasons. Re-enable mutate allows for dropout to used in the implementation. It is also possible that certain genomes are disabling genes too quickly and this can help to correct for that.

$\endgroup$
2
  • 1
    $\begingroup$ "This gene can be re-enabled by an enable mutate". I found no mention of this mutation. Source? NEAT paper says "Each mutation expands the size of the genome by adding gene(s)." Such 'enable' mutation would not add gene. $\endgroup$
    – kuma
    Mar 3, 2018 at 13:20
  • 1
    $\begingroup$ Sorry, I had forgotten this was not included in the original publication. Many other publications attempting to improve the NEAT method add this mutation type (See my edit). $\endgroup$ Mar 3, 2018 at 17:42
1
$\begingroup$

Yes. The mutation can either disable or enable a gene.

It's in the original NEAT implementation released by Dr. Kenneth O. Stanley.

Declared in genetics.h:

void mutate_toggle_enable(int times); /* toggle genes on or off */
void mutate_gene_reenable();  /* Find first disabled gene and enable it */

http://nn.cs.utexas.edu/soft-view.php?SoftID=4

http://nn.cs.utexas.edu/?neat-c

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .