0
votes

I'm using one that checks if the fittest chromosome in each generation has the same fitness for a number of generations (say.. 100) then the GA should terminate. But I don't think it's working efficiently, should it?

If not, what is/are the best termination criteria(s) for a genetic algorithm? I know I can end it after a number of generations or a time being, but I want the ones that imply on solutions and their fitness?

I don't understand these solutions btw, http://en.wikipedia.org/wiki/Genetic_algorithm#Termination

1
The description in the wiki page is very clear. What do you not understand? - Andreas
"The highest ranking solution's fitness is reaching or has reached a plateau such that successive iterations no longer produce better results" how will i determine this? ^ - Mudasir Soomro
and is it different from what i've done? - Mudasir Soomro
it's exactly what you have done - Andreas

1 Answers

2
votes

This termination criteria might be dangerous for certain problems if you're using an elitist GA. The best solution would be kept from generation to generation and may be far better than any other solution. This then requires a number of generations for the rest of the population to catch up, which you would detect as stagnated. I would rather base the convergence detection on the average population quality as well as the best quality. Only if both have not improved, then convergence has occurred and you can stop.