Add type of selections, mutation and crossover