encoding techniques in genetic algorithm