I am implementing the Genetic Algorithm in python to decode a message. in every generation, I print the maximum fitting score of the population. But after reaching about a specific number it stops growing. For example, I see these numbers:
Generation0: 17, Generation1: 20, ..., Generation50: 110, Generation51: 120,..., Generation100 = 120.
I select the crossover point and mutations randomly, but it did not improve my algorithm. Can anyone give me a suggestion to avoid this problem? I think this is the repetition problem. Also, I tried to add chromosomes with a low fitting score to parents of the next offspring when this problem happens, but it had not a great impact.
Thanks.