Genetic Algorithms in Elixir:repair_chromosome (page 104)

repair_chromosome should not pass the Enum (i.e., chromosome) to repair_helper. Rather, it should pass the set genes.

Change:

def repair_chromosome(chromosome) do
  genes = MapSet.new(chromosome.genes) 
  new_genes = repair_helper(chromosome, 8) 
  %Chromosome{chromosome | genes: new_genes}
end

to:

def repair_chromosome(chromosome) do
  genes = MapSet.new(chromosome.genes) 
  new_genes = repair_helper(genes, 8) 
  %Chromosome{chromosome | genes: new_genes}
end