Skip to content

Individuals selection for crossover. #4

@Lipsum

Description

@Lipsum

There is a problem in the way we choose the individuals for crossover.

At the beginning, when an individual wanted to crossover, we randomly choose an other individual for crossover.

Then I choose to implement it differently :
When an individual i1 wants to crossover :

  • if we know that there is another individual i2 who wants to crossover, we use i1 and i2 for the crossover
  • if we don't know if there is an individual who wants to crossover, we remember that i1 wants to crossover and we continue with the next individual. Then, the next indivudual who wants to crossover will do it with i1.

I think this way of choosing individuals is better because the first solution seems less "natural". However, ther is still an issue.
If we build the list of individuals who wants to crossover, we remark that crossovers will only happend between consecutive individuals in this list. This (roughtly) means that the probability of crossover between the individuals with rank r1 and r1' is less than probability of crossover between individuals of rank r2 and r2' (with [r2, r2'] in [r1, r1']).
This is a kind of "class crossover" (i.e. crossover happends mostly between individuals of close rank).

I don't know if this is a big issue but at least we have to know that our selection does that.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions