<p>Yes. The mutation can either disable or enable a gene.</p>

<p>It's in the original NEAT implementation released by Dr. Kenneth O. Stanley.</p>

<blockquote>
  <p>Declared in <code>genetics.h</code>:</p>

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

<p><a href="http://nn.cs.utexas.edu/soft-view.php?SoftID=4" rel="nofollow noreferrer">http://nn.cs.utexas.edu/soft-view.php?SoftID=4</a></p>

<p><a href="http://nn.cs.utexas.edu/?neat-c" rel="nofollow noreferrer">http://nn.cs.utexas.edu/?neat-c</a></p>

CC BY-SA 4.0
2019-02-07T08:55:21.403Z
2019-02-07T08:55:21.403Z
Coconut
<p>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 <a href="http://nn.cs.utexas.edu/downloads/papers/stanley.ec02.pdf" rel="nofollow noreferrer">NEAT Paper</a>) 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.</p>

<p>The original paper does not mention a mutation to re-enable genes, <a href="https://www.cs.ox.ac.uk/people/shimon.whiteson/pubs/ethembabaoglutr08.pdf" rel="nofollow noreferrer">but various other publications</a> 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.</p>

CC BY-SA 3.0
2018-03-03T13:20:15.713Z
"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.
kuma
CC BY-SA 3.0
2018-03-03T17:42:54.077Z
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).
Andrew Butler
CC BY-SA 3.0
2018-03-03T05:05:54.983Z
2018-03-03T17:50:10.227Z
2018-03-03T17:50:10.227Z
Andrew Butler
<p>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. </p>

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

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

<neural-networks><genetic-algorithms><neat><neuroevolution>
Can mutation enable a disabled connection?
kuma
# Can mutation enable a disabled connection?

(Asked by: username_0 on 2018-03-03)

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")?

**Tags:** neural-networks, genetic-algorithms, neat, neuroevolution


---

## 2 answers

### Answer by username_2 on 2018-03-03. Score: 3 | Accepted answer

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](http://nn.cs.utexas.edu/downloads/papers/stanley.ec02.pdf)) 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](https://www.cs.ox.ac.uk/people/shimon.whiteson/pubs/ethembabaoglutr08.pdf) 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.

> **Comments:**
> **username_0**: "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.  
> **username_2**: 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).  

---

### Answer by username_1 on 2019-02-07. Score: 1

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


---

