I was trying to understand the principle of a GA and implemented it myself for some games and always got to the following question;
Usually the evolving of a generations works the following:
- testing all networks
- scoring them
- select the best
- reproduce the next generation
- mutate the next generation
In most tutorials / explanations, the mutate step is done with EVERY network.
Wouldn't it make more sense to only mutate those who just got reproduced?
This way, you could keep those who did fine without mutating them. If the next generation would be really bad, there would still be this "backup" of networks in the current generation.
Why is the mutation step applied to every network and not only just those which were newly reproduced?