seallard / walker

NEAT
MIT License
0 stars 0 forks source link

Parts of the network become isolated #52

Closed seallard closed 4 years ago

seallard commented 4 years ago

The input nodes become disconnected from the output nodes: image Disabling crossover seems to cause the bug to not appear. Disabling the link toggle mutation does not help.

seallard commented 4 years ago

I'm not sure if this is a bug or not. It is obviously a problem that the code gets stuck in the update method. But why should any restrictions be imposed whatsoever on which links that are allowed to be disabled? If a mutation occurs that damages the phenotype to the extent that it can not provide an output, it probably will be deleted from the population anyway over time (since NEAT uses elitism).

seallard commented 4 years ago

Maybe NEAT discovers that some of the inputs are not required to solve the problem. Then it should be allowed to disable those links. It does not make sense to try to sensor the kinds of mutations that can occur, it is the job of the genetic algorithm to filter bad phenotypes.