anchor.diff:               end,
       {_Sol, _Fit, _Energy} = lists:foldl(ArgMax, hd(Agents), tl(Agents)).
   
  --spec load_params() -> sim_params().
  +-spec load_params() -> [{atom(), term()}].
   load_params() ->
       ConfDir = mas_misc_util:get_config_dir(),
       io:format("~p~n", [ConfDir]),
  
positive.code: %% Callbacks
  %% ====================================================================
  
  -spec start(model(),pos_integer()) -> ok.
  start(Model, Time) ->
      start(Model, Time, []).
  
  
  -spec start(model(),pos_integer(),[tuple()]) -> ok.
  start(Model, Time, SimParamOptions) ->
      start(Model, Time, SimParamOptions, []).
  
  
  -spec start(model(),pos_integer(),[tuple()],[tuple()]) -> ok.
  start(Model, Time, SimParamOptions, ConfigOptions) ->
      SimParamsUpdated = mas_misc_util:overwrite_options(SimParamOptions, load_params()),
      Agents = mas:start(?MODULE, Model, Time, proplist_to_record(SimParamsUpdated), ConfigOptions),
  
negative.code:     ParamsFromFile.
  
  %% @doc Transform a proplist with simulation properties to a record
  -spec proplist_to_record([{atom(), term()}]) -> sim_params().
  proplist_to_record(Proplist) ->
      Dict = dict:from_list(Proplist),
      #sim_params{?LOAD(genetic_ops, Dict),
  