1) At the end of each generation, the whole population is checked for duplicate members.
2) If a duplicate member is found, it is replaced by a completely new randomly generated member (strategy in our case).
3) The evolution continues with a de-duplicated population into the next new generation.
4) This duplicate check/replacement is repeated at the end of EACH generation.
This way we can avoid such scenarios easily and it also inserts some completely "fresh blood" into each generation in case it begins to create many duplicates (which is a sign of stagnation too).
Status changed from New to Fixed