Question

I am working on multi objective Genetic Algorithms, I have say 4 objectives and no. of generations is 400, and a population size of 100. So how many function evaluation will be there? I mean to say is it 4*400*100 or 400*100?

Was it helpful?

Solution

If for each chromosome you evaluate 4 functions, then obviously you have a total of 4*400*100 evaluations.

What you might also want to consider is the running time of each of this evaluations, because if 3 of the functions run in O(n) and the forth runs in O(n^2), the total running time will be bounded by O(number_of_gens*population_size*n^2), and will be only mildly affected by the other three functions in large problem instances.

OTHER TIPS

If you're asking about the number of evaluations as counted by MOO researchers (i.e., you want to know whether your algorithm is better than mine with the same number of evaluations), then the accepted answer is incorrect. In multi-objective optimization, we formally consider the problem not as optimizing k different functions, but as optimizing one vector-valued function.

It's one evaluation per individual, regardless of the dimensionality of the objective space.

As far as I know, the number of function evaluation of genetic algorithm can be calculated through following equation: Number of function evaluations = Number of main population + [number of new children(from cross over) + number of mututed children(from mutation)] * number of itteration.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top