I'm solving problem of making teams of players for some game, using genetic algorithm.
Having pool
of players to split, I represent individual from population as a row of teams
, where each team
is some list or an array of number of players in pool
. I translate each number to the binary encode, as if it was in "original" genetic algo. But now I start to think of advantages and disadvantages of binary representation of the individuals.
My thoughts were that I can use very common mutation
and crossover
frameworks: just change bits and change tails, accordingly. But I am able to do it with just integer numbers, simply using some manual mutation
function.
So, the question is: what are the benefits and drawbacks of the binary/integer-valued representation? What is most "true" way to use GA?
I checked original book by author of GA, John Holland, and there he uses binary representation, but I haven't found (yet probably) information about what representation fits best.
In this answer shown one drawback whilst using float numbers: after crossover two parents could move far away from each other. But in my case I don't need to use float numbers.