Pelo que li, algoritmos genéticos são geralmente (sempre?) Aplicados a cromossomos de bits. Portanto, se um problema envolve maximizar uma função que aceita valores inteiros, os inteiros são primeiro codificados como bits.
Esse mapeamento é necessário? Parece que você pode pegar cromossomos de números inteiros e aplicar crossover e mutação diretamente. Portanto, se eu tenho uma função que aceita 35 entradas inteiras, posso aplicar os operadores genéticos a esses números inteiros, e não nos bits 35xB (onde B é o número de bits necessários para codificar um número inteiro). Existe uma razão para isso não ser feito?
Talvez o algoritmo sofra porque o problema é definido de forma mais grosseira (ou seja, um problema pode ser definido com cromossomos mais curtos se não estivermos usando bits), mas estou curioso para saber se alguém tem uma resposta melhor.