View source: R/process_recovery_data.R
recovery_data | R Documentation |
This function processes the synthetic datasets generated by
simulate_list()
. For each of these simulated datasets, it then
fits every model specified within the fit_model
list. In essence,
it iteratively calls the optimize_para()
function for each
generated object.
The fitting procedure is analogous to that performed by fit_p
,
and it similarly leverages parallel computation across subjects
to significantly accelerate the parameter estimation process.
recovery_data(
list,
id = 1,
n_trials,
n_params,
funcs = NULL,
policy,
model_name,
fit_model,
lower,
upper,
initial_params = NA,
initial_size = 50,
iteration = 10,
seed = 123,
nc = 1,
algorithm
)
list |
[list] A list generated by function |
id |
[vector] Specifies which subject's data to use. In parameter and model recovery analyses, the specific subject ID is often irrelevant. Although the experimental trial order might have some randomness for each subject, the sequence of reward feedback is typically pseudo-random. The default value for this argument is default: |
n_trials |
[integer] The total number of trials in your experiment. |
n_params |
[integer] The number of free parameters in your model. |
funcs |
[character] A character vector containing the names of all user-defined functions required for the computation. When parallel computation is enabled (i.e., 'nc > 1'), user-defined models and their custom functions might not be automatically accessible within the parallel environment. Therefore, if you have created your own reinforcement learning model
that modifies the package's default four default functions
(default functions:
|
policy |
[character] Specifies the learning policy to be used.
This determines how the model updates action values based on observed or
simulated choices. It can be either
default: |
model_name |
[character] The name of your modal |
fit_model |
[function] fit model |
lower |
[vector] Lower bounds of free parameters |
upper |
[vector] Upper bounds of free parameters |
initial_params |
[numeric] Initial values for the free parameters that the optimization algorithm will
search from. These are primarily relevant when using algorithms that require
an explicit starting point, such as default: |
initial_size |
[integer] This parameter corresponds to the population size in genetic
algorithms ( default: |
iteration |
[integer] The number of iterations the optimization algorithm will perform when searching for the best-fitting parameters during the fitting phase. A higher number of iterations may increase the likelihood of finding a global optimum but also increases computation time. |
seed |
[integer] Random seed. This ensures that the results are reproducible and remain the same each time the function is run. default: |
nc |
[integer] Number of cores to use for parallel processing. Since fitting optimal parameters for each subject is an independent task, parallel computation can significantly speed up the fitting process:
default: |
algorithm |
[character]
Choose an algorithm package from
In addition, any algorithm from the |
a data frame for parameter recovery and model recovery
## Not run:
binaryRL.res <- binaryRL::optimize_para(
data = Mason_2024_G2,
id = 1,
n_params = 3,
n_trials = 360,
obj_func = binaryRL::RSTD,
lower = c(0, 0, 0),
upper = c(1, 1, 10),
iteration = 100,
algorithm = "L-BFGS-B"
)
summary(binaryRL.res)
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.