The optimization simdesigns need at least one defined metrics reporter for fitness calculation of the optimization algorithm. Otherwise, simulations might get stuck in endless loops.ĭepending on the simdesign, the following slots may be obligatory:Ī vector of valid netlogo reporters that defines which measurements are taken. Warning: This is only recommended in combination with a stop condition (see slot stopcond), or NetLogo models with a built-in stop condition. Use 0 or NA_integer_ to execute simulations without predefined number of ticks. These two class slots accept strings, or vectors of strings, defining NetLogo model procedures that should be executed for model setup (idsetup) and model execution (idgo).ĭefines the maximum number of simulation ticks that are executed. If "false" measurements are taken only on the last tick. If "true", the defined output reporters are collected on each simulation tick that is defined in evalticks. In cases, where the random seed is set within the NetLogo model, repitition can be increased to repeat the same parameterisation with different random seeds. In cases, where the random seed is controlled by nlrx simdesigns, repitition should be set to one as random seeds would not differ between simulations. The following class slots are obligatory to run an experiment: The simdesign helper functions use the variable definitions from the experiment within the nl object to generate a parameter tibble for simulations. When setting up an experiment, it is usually attached to an already defined nl object (see examples).Īfter attaching an experiment, different simdesign helper functions can be used to attach a simdesign to the nl object simdesign. The class holds all information that is typically entered into NetLogo Behavior Space experiments. The experiment class stores all information related to the NetLogo simulation experiment. The name of each list item has to be a valid global of the defined NetLogo model (e.g. list("paramA" = list(values=c(0, 0.5, 1), min=0, max=1, step=0.1, qfun="qunif")))Ī list of constants that are kept constant within a simulation design. Depending on the desired simdesign each list item consist of a vector of values, a min value, a max value, a step value and a qfun (e.g. The name of each sublist item has to be a valid global of the defined NetLogo model. list("links" = c("end1", "end2")))Ī nested list of variables that are changed within a simulation design. c("pxcor", "pycor", "pcolor"))Ī list with named vectors of strings defining valid links-own variables that are taken as output measurements (e.g. Vector of strings defining valid patches-own variables that are taken as output measurements (e.g. c("count turtles", "count patches"))Ī list with named vectors of strings defining valid turtles-own variables that are taken as output measurements (e.g. Vector of strings defining valid NetLogo reporters that are taken as output measurements (e.g. If it reports TRUE the current simulation run is stopped (e.g. NA_integer_ to measure each tickĪ NetLogo reporter that reports TRUE/FALSE. Vector of tick numbers defining when measurements are taken. Number of model ticks that should be run for each simulation "false" runs metrics only after simulation is finishedĬharacter string or vector of character strings, defining the name of the NetLogo setup procedureĬharacter string or vector of character strings, defining the name of the NetLogo go procedureĬharacter string or vector of character strings, defining the name of NetLogo procedures that should be run after the last tickĬharacter string, defining the name of a NetLogo global that should be used to parse the current siminputrow during model executions which can then be used for self-written output. Path to a directory where experiment output will be storedĪ number which gives the number of repetitions for each row of the simulation design input tibbleĬharacter string "true" runs defined metrics on each simulation tick. A character string defining the name of the experiment, no whitespaces allowed
0 Comments
Leave a Reply. |