anchor.diff:  
   -record(neuron, {gtype, train, spikes, fitness=0}).
   
  -parse_args([Fname, Sdm | T ]) ->
  -    [atom_to_list(Fname), Sdm | T].
  +parse_args([Fname, Sdm, Mutprob, Mutrate, Xover_type| _]) ->
  +    [atom_to_list(Fname), utils:atom_append(Sdm, "_fitness"),
  +     atom_to_float(Mutprob), atom_to_float(Mutrate), Xover_type].
   
   random_genotype_fn(_) ->
       fun () ->
  
positive.code:         0 -> C = A;
          1 -> C = B
      end,
      crossover_sel(TA, TB, <<Res/binary, C/float>>).
  
  crossover_fn(_) ->
      fun crossover_avg/2.
  
  mutation(P, <<X/float, R/binary>>, [{L, U, Stddev} | T]) ->
      Rmut = mutation(P, R, T),
  
negative.code:                 false -> Gtype
              end
      end.
  
  analyze_fn(_) ->
      Comparator = fun (X, Y) ->
                           X#neuron.fitness > Y#neuron.fitness
                   end,
      fun (Pop) ->
              [Best | _] = lists:sort(Comparator, Pop),
              io:format("~w ", [Best#neuron.fitness]),
              lists:foreach(fun (v) -> io:format("~w ", [v]) end,
                            Best#neuron.train),
              io:format("~n")
      end.
  