Added fitness function and crossover function