createShadowTestConfig is a config function for creating a config_Shadow object for shadowtest assembly.
Default values are used for any unspecified parameters/slots.
createShadowTestConfig(
item_selection = NULL,
content_balancing = NULL,
MIP = NULL,
MCMC = NULL,
exclude_policy = NULL,
refresh_policy = NULL,
exposure_control = NULL,
overlap_control = NULL,
stopping_criterion = NULL,
interim_theta = NULL,
final_theta = NULL,
theta_grid = seq(-4, 4, 0.1)
)a named list containing item selection criteria.
method the type of selection criteria. Accepts MFI, MPWI, FB, EB, GFI. (default = MFI)
info_type the type of information. Accepts FISHER. (default = FISHER)
initial_theta (optional) initial theta values to use.
fixed_theta (optional) fixed theta values to use throughout all item positions.
target_value (optional) the target value to use for method = 'GFI'.
a named list containing content balancing options.
method the type of balancing method. Accepts NONE, STA. (default = STA)
a named list containing solver options.
solver the type of solver. Accepts Rsymphony, highs, gurobi, lpSolve, Rglpk. (default = LPSOLVE)
verbosity verbosity level of the solver. (default = -2)
time_limit time limit in seconds. Used in solvers Rsymphony, gurobi, Rglpk. (default = 60)
gap_limit search termination criterion. Gap limit in relative scale passed onto the solver. Used in solver gurobi. (default = .05)
gap_limit_abs search termination criterion. Gap limit in absolute scale passed onto the solver. Used in solvers Rsymphony. (default = 0.05)
obj_tol search termination criterion. The lower bound to use on the minimax deviation variable. Used when item_selection$method is GFI, and ignored otherwise. (default = 0.05)
retry number of times to retry running the solver if the solver returns no solution. Some solvers incorrectly return no solution even when a solution exists. This is the number of attempts to verify that the problem is indeed infeasible in such cases. Set to 0 to not retry. (default = 5)
a named list containing Markov-chain Monte Carlo configurations for obtaining posterior samples.
burn_in the number of chains from the start to discard. (default = 100)
post_burn_in the number of chains to use after discarding the first burn_in chains. (default = 500)
thin thinning interval to apply. 1 represents no thinning. (default = 1)
jump_factor the jump (scaling) factor for the proposal distribution. 1 represents no jumping. (default = 2.4)
a named list containing the exclude policy for use with the exclude argument in Shadow.
method the type of policy. Accepts HARD, SOFT. (default = HARD)
M the Big M penalty to use on item information. Used in the SOFT method.
a named list containing the refresh policy for when to obtain a new shadowtest.
method the type of policy. Accepts ALWAYS, POSITION, INTERVAL, THRESHOLD, INTERVAL-THRESHOLD, STIMULUS, SET, PASSAGE. (default = ALWAYS)
interval used in methods INTERVAL, INTERVAL-THRESHOLD. Set to 1 to refresh at each position, 2 to refresh at every two positions, and so on. (default = 1)
threshold used in methods THRESHOLD, INTERVAL-THRESHOLD. The absolute change in between interim theta estimates to trigger the refresh. (default = 0.1)
position used in methods POSITION. Item positions to trigger the refresh. (default = 1)
a named list containing exposure control settings.
method the type of exposure control method. Accepts NONE, ELIGIBILITY, BIGM, BIGM-BAYESIAN. (default = ELIGIBILITY)
M used in methods BIGM, BIGM-BAYESIAN. the Big M penalty to use on item information.
max_exposure_rate target exposure rates for each segment. (default = rep(0.25, 7))
acceleration_factor the acceleration factor to apply. (default = 1)
n_segment the number of theta segments to use. (default = 7)
first_segment (optional) the theta segment assumed at the beginning of test for all participants.
segment_cut theta segment cuts. (default = c(-Inf, seq(-2.5, 2.5, 1), Inf))
initial_eligibility_stats (optional) initial eligibility statistics to use.
fading_factor the fading factor to apply. (default = .999)
diagnostic_stats set to TRUE to generate segment-wise diagnostic statistics. (default = FALSE)
a named list containing overlap control settings.
method the type of overlap control method. Accepts NONE, ELIGIBILITY, BIGM, BIGM-BAYESIAN. (default = NONE)
M used in methods BIGM, BIGM-BAYESIAN. the Big M penalty to use on item information.
max_overlap_rate target overlap rate. (default = 0.20)
a named list containing stopping criterion.
method the type of stopping criterion. Accepts FIXED. (default = FIXED)
test_length test length.
min_ni the maximum number of items to administer.
max_ni the minimum number of items to administer.
se_threshold standard error threshold. Item administration is stopped when theta estimate standard error becomes lower than this value.
a named list containing interim theta estimation options.
method the type of estimation. Accepts EAP, MLE, MLEF, EB, FB, CARRYOVER. (default = EAP)
shrinkage_correction set TRUE to apply shrinkage correction. Used when method is EAP. (default = FALSE)
prior_dist the type of prior distribution. Accepts NORMAL, UNIFORM. (default = NORMAL)
prior_par distribution parameters for prior_dist. (default = c(0, 1))
bound_ML theta bound in c(lower_bound, upper_bound) format. Used when method is MLE. (default = -4, 4)
truncate_ML set TRUE to truncate ML estimate within bound_ML. (default = FALSE)
max_iter maximum number of Newton-Raphson iterations. Used when method is MLE. (default = 50)
crit convergence criterion. Used when method is MLE. (default = 1e-03)
max_change maximum change in ML estimates between iterations. Changes exceeding this value is clipped to this value. Used when method is MLE. (default = 1.0)
use_step_size set TRUE to use step_size. Used when method is MLE or MLEF. (default = FALSE)
step_size upper bound to impose on the absolute change in initial theta and estimated theta. Absolute changes exceeding this value will be capped to step_size. Used when method is MLE or MLEF. (default = 0.5)
do_Fisher set TRUE to use Fisher's method of scoring. Used when method is MLE. (default = TRUE)
fence_slope slope parameter to use for method = 'MLEF'. This must have two values in total, for the lower and upper bound item respectively. Use one value to use the same value for both bounds. (default = 5)
fence_difficulty difficulty parameters to use for method = 'MLEF'. This must have two values in total, for the lower and upper bound item respectively. (default = c(-5, 5))
hand_scored_attribute (optional) the item attribute name for whether each item is hand-scored or not. The attribute should have TRUE (hand-scored) and FALSE (machine-scored) values. If a hand-scored item is administered to an examinee, the previous interim theta (or the starting theta if this occurs for the first item) is reused without updating the estimate.
a named list containing final theta estimation options.
method the type of estimation. Accepts EAP, MLE, MLEF, EB, FB, CARRYOVER. (default = EAP)
shrinkage_correction set TRUE to apply shrinkage correction. Used when method is EAP. (default = FALSE)
prior_dist the type of prior distribution. Accepts NORMAL, UNIFORM. (default = NORMAL)
prior_par distribution parameters for prior_dist. (default = c(0, 1))
bound_ML theta bound in c(lower_bound, upper_bound) format. Used when method is MLE. (default = -4, 4)
truncate_ML set TRUE to truncate ML estimate within bound_ML. (default = FALSE)
max_iter maximum number of Newton-Raphson iterations. Used when method is MLE. (default = 50)
crit convergence criterion. Used when method is MLE. (default = 1e-03)
max_change maximum change in ML estimates between iterations. Changes exceeding this value is clipped to this value. Used when method is MLE. (default = 1.0)
use_step_size set TRUE to use step_size. Used when method is MLE or MLEF. (default = FALSE)
step_size upper bound to impose on the absolute change in initial theta and estimated theta. Absolute changes exceeding this value will be capped to step_size. Used when method is MLE or MLEF. (default = 0.5)
do_Fisher set TRUE to use Fisher's method of scoring. Used when method is MLE. (default = TRUE)
fence_slope slope parameter to use for method = 'MLEF'. This must have two values in total, for the lower and upper bound item respectively. Use one value to use the same value for both bounds. (default = 5)
fence_difficulty difficulty parameters to use for method = 'MLEF'. This must have two values in total, for the lower and upper bound item respectively. (default = c(-5, 5))
the theta grid to use as quadrature points.