jeffheaton / encog-java-core

http://www.heatonresearch.com/encog
Other
742 stars 268 forks source link

NEAT Elitism Issue #256

Open DanielleNagar opened 6 years ago

DanielleNagar commented 6 years ago

In Ken Stanley's original NEAT paper, the following is specified:

"Species then reproduce by first eliminating the lowest performing members from the population. The entire population is then replaced by the offspring of the remaining organisms in each species."

This implies that NEAT does not employ an elitist selection mechanism. However, it appears as though Encog-NEAT always propagates the i best (elite) individuals from each species in the old population to the new population, since it seems to use the iteration() method in the BasicEA class.

It would appear that setting the eliteRate to 0 (in BasicEA) would fix this issue as old elite members from each species would never be propagated to the new population.