I am not sure if I got the point. The big deal of Tournament selection
is that you
evaluate a very little amout of individuals at once. This means, once a
initialized I have only to measure the fitness of the guys taking the
The default tournament size is 7, why do why _all_ individuals are sent
problem's evaluate method although most of the individuals did not change?
Sean Luke wrote:
> Ah, I understand. ECJ's steady-state evaluator does not support lazy
> evaluation. It doesn't mean it can't be hacked in -- but it's not
> there by default.
> While it's true you can generate a population from a previous
> population without having to create all the individuals, that doesn't
> help you much when you're trying to identify the best individual you
> discover along the way though.
> On Oct 30, 2006, at 2:12 PM, Serethos wrote:
>> Sure its all a matter of definition. But afaik tournament selection
>> is one of the most popular
>> steady state selection, because not all individuals are evaluated.
>> there is no replacement
>> of a whole generation (if you assume, the not evaluated individuals
>> do not use reproduction).
>> Sean Luke wrote:
>>> Generations are independent of the selection procedure. In
>>> generational selection, individuals are evaluated, and then through
>>> a process of selection and breeding, a new population is formed.
>>> Once the new population is in place, it replaces the old one and the
>>> cycle repeats. That's one generation.
>>> The only exception to this is in steady state evolution, where ECJ
>>> used to abuse the "generation" marker to mean something else -- but
>>> we've since changed that and there is a formal definition in steady
>>> state evolution as to what everything is.
>>> On Oct 30, 2006, at 8:41 AM, Serethos wrote:
>>>> I am wondering how a Generation is defined in ECJ if Tournament
>>>> is used. Is there a generation change, after _one_ tournament has
>>>> been executed
>>>> or after enough individuals have been produced so that
>>>> numWinners == numIndividualsOfPopulation?